Sobes.tech

Golang

Miért jobb a Go megközelítése a párhuzamosságban, mint más nyelvekben?

Middle+
X5
116

Meséljen a nagy terhelésű rendszerekkel kapcsolatos tapasztalatairól. Szükség volt-e már a forgalom elosztásával és kiegyensúlyozásával kapcsolatos feladatok megoldására?

Senior
Hi Rockits
116

Ha a művelet 10-12 percig tart, és aktív írás folyik, és az adatok változnak, nem voltak mellékhatások?

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

Mekkora az algoritmus idő- és memóriaigénye?

Senior
Яндекс
116

Meséljen a tranzakciók izolációs szintjeiről: Read Uncommitted, Read Committed, Repeatable Read, Serializable.

Senior
Алабуга
116

Miért keresel most új munkahelyet? Mi nem tetszik a jelenlegi munkahelyeden?

Middle+
АЙ-ТЕКОАЙ-ТЕКО
116

[név] kérdezte: mesélj a GoLang szinkronizációs primitívjeiről.

Middle
RWB
116

Most szeretnénk a HeadHunter-re menni és szűrők szerint keresni jelölteket — hogyan építsük fel ezt az architektúrát?

Senior
OZONOZON
116

Honnan származtak az adatok? A logisztikusok küldték vagy hogyan?

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

Mit lehet tenni, hogy elkerüljük a térkép evakuálását egy highload-szolgáltatásban?

Middle+
OZONOZON
116

Mi az a Load Average, hogyan ellenőrizhető és mire figyeljen?

Senior
VKVK
116

Törlésre kerülnek a konténer adatai a leállítás után?

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

Milyen feladatokhoz használtál goroutine-okat és csatornákat?

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

Hogyan befolyásoltad a folyamat változását az analitikával?

Senior
AvitoAvito
116

Hogyan van általánosságban technikailag felépítve a HR-platforma?

Senior
BetBoom
116

Hogyan kezelte azt a helyzetet, amikor a számlák átutalások során különböző shardokra kerültek?

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

Hogyan lehet egy számot bináris rendszerbe átalakítani?

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

Hogyan jutottál el a PostgreSQL optimalizálásához, és milyen optimalizációs módszereket alkalmaztál?

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

Valósítson meg egy olyan függvényt, amely []any és delta int típusokat fogad. Csak az egyedi számok (int) első előfordulásait kell növelni delta értékkel. Más típusokat és ismétlődő számokat változatlanul hagyjon. A függvénynek vissza kell adnia a frissített listát és 2 számot: updated – hány egyedi szám változott, duplicates – hány numerikus elem volt duplikátum func IncrementUniqueIntsInMixed(xs []any, delta int) ([]any, int, int) { // a kódja } // Példa: xs := []any{1, "a", 5, "b", 1, 0, 5} u, d, s := IncrementUniqueIntsInMixed(xs, 3) // xs == []any{4, "a", 8, "b", 1, 3, 5} // u == 3 // egyedi számok: 1, 5, 0 // d == 2 // duplikátumok: második 1, második 5

Middle+
OZONOZON
116
/412