Əgər məlumatlar dinamikdirsə və hər 10 dəqiqədə bir dəyişirsə, və dəqiqədə milyonlarla oxunursa, hansı yanaşma?
Golang
Eyni infrastrukturada yaşayırdınız yoxsa müxtəlif sistemlər müxtəlif dövrlərdə idimi?
HTTP/1.1 və HTTP/2 arasındakı fərq nədir?
Xidmətlər arasındakı müqavilələrdən kim cavabdeh idi? Müqavilənin sahibi kim idi və onu necə dəyişdiniz?
Yenidən istifadə üçün məlumatları nə qədər müddət saxladınız? Həqiqətən nəyin nüsxə olduğunu nə vaxt başa düşdünüz?
Əgər əvvəlcə bütün məlumatları yaddaşa yükləsək və sonra yalnız oxumaq üçün, mutex istifadə etmədən mümkündürmü? Belə bir ssenaridə map istifadə etmək məntiqlidirmi?
Niyə məhz bu qədər xidmət etdiniz? Seçim necə baş verdi — xidmət etmək və ya etməmək?
Axtarış vəziyyətinizə görə təklifləri nə dərəcədə aktiv şəkildə nəzərdən keçirirsiniz? Artıq bəzi təkliflər və ya qəbul üçün son tarixlər varmı?
Bir az özünüz haqqında danışın: son iş yerinizdə nə işlə məşğul oldunuz, əsas vəzifələriniz nələr idi və son vaxtlar həyata keçirdiyiniz çətin və ya maraqlı bir vəzifə haqqında danışın — nə baş verdi, nə etdiniz və nəticəsi nə oldu.
```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) } ``` Kodda xətanı düzəltmək üçün, dbHits dəyişəninə eyni vaxtda girişlə əlaqəli problemi həll etmək lazımdır.