Golang
[Şəhər]də yaşamısan, sonra [şəhər]ə köçmüsən?
```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.
İdempotentlik haqqında danışa bilərsənmi? Onu necə tətbiq etdin? Ümumiyyətlə necə işləyirdi?
Kitabxona modelini təsvir etmək lazımdır. 3 varlıq var: "Yazar", "Kitab", "Oxucu". -- Fiziki olaraq, yalnız bir kitab var və yalnız bir oxucuya aid ola bilər. -- Bir kitabın bir neçə müəllifi ola bilər.
Hansı proqramlaşdırma dilində işləyirsiniz? Sintaks ilə niyə çətinliklər yarandı?
Blokzincir və CAP-teoremi necə əlaqəlidir? Blokzincir həmişə əlçatan olurmu?
Tapşırıq: Kod nə göstərəcək? ```go package main import "fmt" func main() { a := []int{1, 2, 3, 4, 5} b := a[:2] b = append(b, 100) fmt.Println(a, b) } ```
Bütün mümkün proseslərarası qarşılıqlı əlaqə (IPC) üsullarını xatırlaya bilərsinizmi?
Yeni layihələr axtarmağa niyə qərar verdiyinizi və hansı inkişafı arzuladığınızı danışın.
Fərqli gorutinlərdən Get və Set metodlarını çağırarkən hansı münaqişə problemləri yaranır? Onları necə həll etmək olar?
PostgreSQL-də hansı növ indeks standartdır?
Komandadakı rolun haqqında daha ətraflı danış.
Memarlıq tapşırıqları ilə işləmə təcrübəniz varmı? Sıfırdan xidmətlər dizayn etməli oldunuzmu?
API Gateway üçün bir Load Balancer, WebSocket üçün başqa — ümumilikdə sistemdə iki LB?
Verilənlər bazasında tranzaksiya səviyyəsində, bir siqnalı eyni zamanda cavablandıran bir neçə qrup olsa da, yalnız bir qrup göndərmək necə mümkündür?
İş axtarışınızın hansı mərhələsindəsiniz: aktiv və ya passiv olaraq vakansiyaları nəzərdən keçirirsiniz?
func updateV1(px *int) { x2 := 20 px = &x2 } func updateV2(px *int) { *px = 20 } func main() { x := 10 updateV1(&x) fmt.Println(x) updateV2(&x) fmt.Println(x) }
Niyə ikili ağac yerinə B- ağac indeksi istifadə olunur?
Kitabxananın modelini təsvir etmək lazımdır. 3 varlıq var: "Yazar", "Kitab", "Oxucu". Fizioloji olaraq, yalnız bir kitab var və yalnız bir oxucuya aid ola bilər. Kitabxana üçün cədvəllər hazırlamaq lazımdır ki, bunu nəzərə alsın.
Özünüz və iş təcrübəniz haqqında danışın