Perché non è consigliabile creare una goroutine separata per ogni URL durante la verifica dei terminali?
Golang
Come verificheresti che un indice aggiunto funzioni davvero bene, soprattutto in produzione?
Le letture si svolgevano con il maestro, con la replica o come venivano distribuite?
Hai usato chiavi per la partizionamento in Kafka?
Hai un libretto militare in mano?
Puoi ricordare un'occasione in cui qualcosa si è rotto e cosa avete fatto?
In quale ordine verranno eseguite le goroutine e perché?
Quale formato di lavoro preferisci?
// Correggere il codice 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() }
Raccontami di un'occasione in cui hai proposto un'iniziativa e l'hai difesa.
Come avete risolto se durante l'aggiornamento dei pod si perdevano le richieste?
Come hai integrato esattamente il client Kafka nel progetto, come l'hai usato?
Sei territorialmente a Mosca?
pacchetto principale 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 }
I compiti arrivavano sempre ben descritti? Come agiva in caso di descrizione incompleta?
Cosa succede con le chiavi vecchie e nuove quando la mappa cresce? Perché non copiare tutto subito?
Hai mai regolato il numero di partizioni all'interno di un topic Kafka?