Sistemul a început să încetinească — cum vei căuta cauza?
Golang
Cum ai verifica dacă un index adăugat funcționează cu adevărat bine, mai ales în producție?
Lecturile se făceau cu maestrul, cu replica sau cum erau distribuite?
Ați folosit chei pentru partiționare în Kafka?
Ai în mână un carnet militar?
În ce ordine vor fi executate goroutine-urile și de ce?
Îți poți aminti o situație în care ceva s-a stricat și ce au făcut?
Ce format de lucru preferați?
Cum ai implementat exact clientul Kafka în proiect, cum l-ai folosit?
// Corectează codul 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("Goroutine %s", strconv.Itoa(i)) ch <- msg }(ch, i, &wg) } for { select { case q := <-ch: fmt.Println(q) } } wg.Wait() }
Povestește-mi despre o situație în care ai propus o inițiativă și ai susținut-o.
Ești situat teritorial în Moscova?
Cum ați rezolvat dacă în timpul actualizării podurilor se pierdeau solicitări?
pachet principal 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 }
Întotdeauna au fost sarcinile bine descrise? Cum acționai în cazul unei descrieri incomplete?
Ce se întâmplă cu cheile vechi și noi pe măsură ce harta crește? De ce să nu copiezi totul deodată?
Ați ajustat vreodată numărul de partiții dintr-un topic Kafka?