Sobes.tech

Golang

Tu însuți monitorizai sau ai o echipă separată?

Senior
WildberriesWildberries
116

De ce abordarea Go pentru concurență este mai bună decât în alte limbaje?

Middle+
X5
116

Vorbiți despre experiența dvs. cu sistemele de înaltă încărcare. Ați fost nevoit să rezolvați probleme legate de distribuirea și echilibrarea traficului?

Senior
Hi Rockits
116

Dacă operația durează între 10-12 minute și există o scriere activă și datele se schimbă, nu au existat efecte secundare?

Senior
МВидео/эльдорадо
116

Care este complexitatea algoritmului în timp și memorie?

Senior
Яндекс
116

Vorbiți despre nivelurile de izolare ale tranzacțiilor: Read Uncommitted, Read Committed, Repeatable Read, Serializable.

Senior
Алабуга
116

Ați avut vreodată de-a face cu sarcini arhitecturale? Cum au fost luate deciziile arhitecturale?

Senior
WildberriesWildberries
116

[nume] a întrebat: povestește-mi despre primitivele de sincronizare în GoLang.

Middle
RWB
116

Acum vrem să mergem pe HeadHunter și să căutăm candidați după filtre — cum arhitecturăm asta?

Senior
OZONOZON
116

De unde proveneau datele? Le trimisero logisticii sau cum?

Senior
МВидео/эльдорадо
116

Ce se poate face pentru a evita evacuarea hărții într-un serviciu de înaltă încărcare?

Middle+
OZONOZON
116

Ce este Load Average, cum îl verifici și la ce trebuie să acorzi atenție?

Senior
VKVK
116

Sunt datele containerului șterse după oprire?

Senior
SberAuto
116

func (c *Client) Send(ctx context.Context, messages []Message, maxWorkers int) error { sem := make(chan struct{}, maxWorkers) var wg sync.WaitGroup var resultErr error var once sync.Once for _, msg := range messages { wg.Add(1) go func(msg Message) { defer wg.Done() sem <- struct{}{} defer func() { <-sem }() body, err := json.Marshal(msg) if err != nil { once.Do(func() { resultErr = err; cancel() }) return } req, _ := http.NewRequestWithContext( ctx, http.MethodPost, c.url, bytes.NewReader(body), ) req.Header.Set("Content-Type", "application/json") resp, err := c.httpClient.Do(req) if err != nil { once.Do(func() { resultErr = err; cancel()}) return } defer resp.Body.Close() if resp.StatusCode >= 500 { once.Do(func() { resultErr = fmt.Errorf("server error") cancel()}) return } c.sentCount.Add(1) time.Sleep(time.Second) }(msg) } wg.Wait() }

Senior
UPSL
116

Pentru ce sarcini ai folosit goroutines și canale?

Middle+
МВидео/эльдорадо
116

Cum ai influențat schimbarea procesului cu analiza?

Senior
AvitoAvito
116

Cum este structurată tehnic în general platforma HR?

Senior
BetBoom
116

Cum ați gestionat situația în care conturile în timpul transferurilor ajungeau pe diferite shards?

Senior
РамблерРамблер
116

Cum se convertește un număr în sistemul binar?

Senior
Лига Цифровой ЭкономикиЛига Цифровой Экономики
116

Cum ai ajuns la momentul optimizării PostgreSQL și ce metode de optimizare ai folosit?

Middle+
МВидеоМВидео
116
/412