Gyvenote toje infrastruktūroje ar skirtingos sistemos buvo skirtinguose kontūruose?
Golang
Kaip nusprendėte, į kuriuos dalinius padalinti monolitą?
Kiek laiko saugojote duomenis deduplikuoti? Iki kokio momento supratote, kad tai yra dublikas?
Kuo skiriasi HTTP/1.1 ir HTTP/2?
Kas atsakingas už sutartis tarp paslaugų? Kas buvo sutarties savininkas ir kaip jūs ją modifikavote?
Jei pirmiausia įkeliame visus duomenis į atmintį ir tada tik skaitome, ar galima išvengti mutex? Ar turi prasmės naudoti žemėlapį tokiame scenarijuje?
Kodėl jūs padarėte būtent tiek paslaugų? Kaip vyko pasirinkimas — kurti paslaugą ar ne?
Kiek aktyviai svarstote pasiūlymus pagal savo paieškos būseną? Ar jau turite keletą pasiūlymų ar terminus jų priėmimui?
Papaskink apie save: ką veikėte paskutinėje darbo vietoje, kokios buvo pagrindinės užduotys, ir papasakok apie kokią nors sudėtingą ar įdomią užduotį, kurią neseniai įgyvendinote — kas tai buvo, ką padarėte, ir kas iš to išėjo.
```go type User struct { ID int Name string } var ( dbHits int ) func getUserInfoFromDB(id int) User { time.Sleep(100 * time.Millisecond) dbHits++ return User{ID: id, Name: fmt.Sprintf("User-%d", id), } } func main() { var wg sync.WaitGroup for i := 0; i < 5; i++ { wg.Add(1) go func(i int) { defer wg.Done() fmt.Println(getUserInfoFromDB(i)) }(42) } wg.Wait() fmt.Println("DB hits:", dbHits) } ``` Korekti, kodas turi būti sinchronizuotas, kad būtų išvengta vienalaikio prieigos prie kintamojo dbHits klaidų.