Sobes.tech

Golang

Ispričaj mi o uzorku Semaphore.

Senior
sber tech
116

Da li ste vi sami pratili monitoring ili imate poseban tim?

Senior
WildberriesWildberries
116

Zašto je pristup Go-a ka višestrukom procesiranju bolji od drugih jezika?

Middle+
X5
116

Ispričajte o svom iskustvu rada sa sistemima visokog opterećenja. Da li ste morali rešavati zadatke vezane za raspodelu i balansiranje saobraćaja?

Senior
Hi Rockits
116

Ako operacija traje 10-12 minuta, a aktivno je zapisivanje i podaci se menjaju, da li su postojali neki neželjeni efekti?

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

Koja je složenost algoritma po vremenu i memoriji?

Senior
Яндекс
116

Реците о нивоима изолације трансакција: Read Uncommitted, Read Committed, Repeatable Read, Serializable.

Senior
Алабуга
116

Da li ste ikada morali da se bavite arhitektonskim zadacima? Kako su donesena arhitektonska rešenja?

Senior
WildberriesWildberries
116

[ime] je pitao: ispričaj mi o primitivima za sinhronizaciju u GoLang.

Middle
RWB
116

Sada želimo da odemo na HeadHunter i tražimo kandidate po filtrima — kako to arhitekturalno osmisliti?

Senior
OZONOZON
116

Odakle su dolazili podaci? Slali su ih logistici ili kako?

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

Šta se može uraditi da se izbegne evakuacija mape u highload-servisu?

Middle+
OZONOZON
116

Šta je Load Average, kako ga proveriti i na šta obratiti pažnju?

Senior
VKVK
116

Da li se podaci kontejnera brišu nakon njegovog zaustavljanja?

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

Za koje zadatke ste koristili goroutines i kanale?

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

Kako ste uticali na promenu procesa sa analizom?

Senior
AvitoAvito
116

Kako je tehnički opšte strukturirana HR platforma?

Senior
BetBoom
116

Kako ste rešavali situaciju kada su računi tokom transfera završavali na različitim shardovima?

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

Kako pretvoriti broj u binarni sistem?

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