Golang
Kas te ise jälgite või on teil eraldi meeskond?
Miks on Go lähenemine mitme protsessi jaoks parem kui teistes keeltes?
Rääkige oma kogemustest töötamisel kõrge koormusega süsteemidega. Kas teil on olnud ülesandeid liikluse jaotamise ja tasakaalustamise osas?
Kui operatsioon kestab 10-12 minutit ja toimub aktiivne kirjutamine ning andmed muutuvad, kas ei olnud kõrvaltoimeid?
Kui keeruline on algoritm aja ja mälu osas?
Rääkige tehingute isolatsiooni tasemetest: Read Uncommitted, Read Committed, Repeatable Read, Serializable.
Miks te praegu uut tööd otsite? Mis teie praeguses töös teile ei meeldi?
[nimi] küsis: räägi mulle GoLang-i sünkronsusprimitiividest.
Nüüd tahame minna HeadHunterisse ja otsida kandidaate filtrite järgi — kuidas seda arhitektuuriliselt kavandada?
Kust andmed pärinesid? Kas logistid neid saatsid või kuidas?
Mida saab teha, et vältida kaardi evakueerimist highload-teenuses?
Mis on Load Average, kuidas seda kontrollida ja millele tähelepanu pöörata?
Kas konteineri andmed kustamise ajal kustutatakse?
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() }
Milliste ülesannete jaoks kasutasite goroutines ja kanaleid?
Kuidas sa mõjutasid protsessi muutust analüütika abil?
Kuidas on üldiselt tehniliselt üles ehitatud HR platvorm?
Kuidas te lahendasite olukorra, kui kontod ülekanete ajal sattusid erinevatesse shardidesse?
Kuidas teisendada arv binaarsüsteemi?
Kuidas jõudsite PostgreSQL optimeerimise hetkeni ja milliseid optimeerimismeetodeid kasutasite?