Da li znači da će se sve ipak završiti nakon ovog timeout-a? Drugim rečima, može se desiti da nešto još uvek ne radi — koji je ovde problem?
Golang
Zamislimo da imamo veliki opterećenje, milione klijenata, i vaš zahtev počinje da radi veoma sporo. Šta biste uradili? Kako biste shvatili da radi u konstantnom vremenu?
Можеш ли да кажеш како си изабрао алгоритам за формирање кратког линка?
Kako vremenski limiti utiču na smanjenje opterećenja analitike?
Kako to uraditi na nivou Go — idejno, da šaljemo odgovor korisniku i istovremeno šaljemo podatke u analitiku?
Ispričaj o projektu u Avitu — pozicija (mid/senior), koje zadatke si rešavao?
Šta se može reći o brzini čitanja pri postojanju indeksa?
Zašto se triggeri uglavnom koriste za Legacy sisteme?
Šta su reference koje si koristio?
Šta će program prikazati? Zašto? ```go func main() { timeStart := time.Now() _, _ = <-worker(), <-worker() println(int(time.Since(timeStart).Seconds())) } func worker() chan int { ch := make(chan int) go func() { time.Sleep(3 * time.Second) ch <- 1 }() return ch } ```
Da li postoje neki indeksi u ovoj tabeli?
Koji će tip imati ovaj brojač?
Dakle, tvoje rešenje u memoriji koristi mutex. Možeš li objasniti šta je to i koji si koristio?
Da li je timeout isti za sve? Kako će se izračunati ovaj timeout?
Takođe si rekao da ćemo koristiti inner join. Zašto? Da li je bilo moguće napisati left join? Čime se razlikuje left join od right join?
Koje su vaše očekivanja u vezi sa platom? Kako je bio strukturiran vaš prethodni prihod (osnovna plata, bonusi)? Da li ste spremni da razmotrite ukupni prihod uključujući bonuse?
Koji su kriterijumi za izbor novog radnog mesta?
Šta misliš, koji je problem sa rešenjem u memoriji? Šta će se desiti ako ponovo pokreneš servis?
Kako se tačno postiže izbegavanje kolizija u različitim rešenjima — u memoriji i u bazi podataka?
Šta će prikazati ovaj kod i zašto? ```go package main import "fmt" func main() { lst := []string{"a", "b", "c", "d"} for k, v := range lst { if k == 0 { lst = []string{"aa", "bb", "cc", "dd"} } fmt.Println(v) } } ```