Терминалдарды тексеру кезінде әр URL үшін бөлек горутин құрудың қажеті жоқ па?
Golang
Қосу индексі шынымен жақсы жұмыс істеп тұрғанын қалай тексерер едіңіз, әсіресе өндірісте?
Оқулар шебермен, көшірмелермен немесе қалай бөлінген?
Қолда әскери билеттіңіз бар ма?
Kafka-да бөлу үшін кілттерді қолдандыңыз ба?
Бірдеңе бұзылып, не істегеніңізді есіңізге түсіре аласыз ба?
Горутиндер қандай тәртіппен орындалады және неге?
Қандай жұмыс форматын ұнатасыз?
Жобада Kafka клиентін қалай жүзеге асырдыңыз, қалай қолдандыңыз?
// Кодты түзету func FixProblem() { var wg sync.WaitGroup ch := make(chan string, 5) mu := sync.Mutex{} for i := 0; i < 5; i++ { wg.Add(1) go func(ch<- string, i int, wg *sync.WaitGroup) { defer wg.Done() mu.Lock() defer mu.Unlock() msg := fmt.Sprintf("Горутин %s", strconv.Itoa(i)) ch <- msg }(ch, i, &wg) } for { select { case q := <-ch: fmt.Println(q) } } wg.Wait() }
Инициативаны ұсынған және оны қорғаған жағдай туралы айта аласыз ба?
Подтарды жаңарту кезінде сұраулар жоғалса — оны қалай шештіңіз?
Сіз Мәскеуде орналасқансыз ба?
package main import "fmt" func main() { nums := make([]int, 1, 2) fmt.Println(nums) // appendSlice(nums, 1024) fmt.Println(nums) // mutateSlice(nums, 1, 512) fmt.Println(nums) // } func appendSlice(sl []int, val int) { sl = append(sl, val) } func mutateSlice(sl []int, idx, val int) { sl[idx] = val }
Міндеттер әрдайым жақсы сипатталған ба? Толық емес сипаттамамен қалай әрекет еттіңіз?
Карта өскен кезде ескі және жаңа кілттермен не болады? Неге бәрін бірден көшіруге болмайды?
Сіз Kafka тақырыбындағы бөлімдердің санын реттеуге тырыстыңыз ба?