Sobes.tech

Golang

Welke benaderingen kunnen worden gebruikt om threadveiligheid te garanderen bij het werken met slices in een multithread-omgeving?

Middle — Middle+
Betera Group
134

Welke bewerkingen zijn toegestaan bij het werken met een nil-slice in de programmeertaal?

Junior — Middle
Кадровое агентство BWG
134

Welke systeemontwerpmethoden geef je de voorkeur bij het maken van oplossingen?

Junior — Middle
134

Vertel over een moeilijke taak die je hebt kunnen oplossen door een script te schrijven voor het Linux-systeem

Junior — Middle
Mail.ruMail.ru
134

Hoe kunt u de hoeveelheid gegevens die in de cache worden opgeslagen regelen?

Junior — Middle
КасперскийКасперский
134

Bereidheid om de enige Backend-specialist in het team te zijn

Junior — Middle
FAQ media holding
134

Wat is de belangrijkste reden om het type sync.Map in Go te gebruiken?

Junior — Middle
YadroYadro
134

Wat zijn goede praktijken en antipatterns in unittests? Hoe weet je of tests goed zijn?

Middle+
X5
134

func Exclude(a, b []int) []int { set := make(map[int]struct{}) for _, v := range b { set[v] = struct{}{} } result := make([]int, 0) for _, v := range a { if _, ok := set[v]; !ok { result = append(result, v) } } return result } Fout bij compilatie # command-line-arguments ./main.go:39:32: syntaxfout: onverwachte regelafbreking, { na if-clausule verwacht

Senior
OZONOZON
134

Heeft u ooit problemen ondervonden bij het implementeren van interacties tussen verschillende services?

Junior — Middle
Mail.ruMail.ru
134

Hoe wordt een slice doorgegeven aan een functie in een programmeertaal?

Junior — Middle
МТС DigitalМТС Digital
134

Wat is het Saga-patroon?

Middle+
Magnit Tech
134

Waarom hebben ze geen Testcontainers genomen?

Senior
OkkoOkko
134

/* We moeten gegevens van een bron naar een ontvanger overbrengen. De bron levert de gegevens in kleine pakketten (~tientallen records), terwijl de ontvanger efficiënter werkt met grotere batches. Een echt voorbeeld is het overzetten van gegevens van Kafka-achtige wachtrijen naar de Clickhouse-database. Bron: - Bijna oneindig. - De bron geeft nooit meer dan MaxItems records terug in één Next-aanroep. - Tijdens één "sessie" (één aanroep van de Pipe-functie) geeft de bron bij elke Next nieuwe gegevens. - Na een herstart begint de bron weer vanaf de vorige "bevestigde" positie, aangegeven door cookie. Daarom moet elke waarde van cookie die Next teruggeeft, na het opslaan van de gegevens in de ontvanger, worden bevestigd met een Commit-aanroep, in dezelfde volgorde als waarin ze door Next werden teruggegeven. Ontvanger: - Kan niet meer dan MaxItems tegelijk verwerken. Basisniveau: Het is nodig om de functie func Pipe(p Producer, c Consumer) error te implementeren, die gegevens uit de bron leest, ze groepeert in een buffer van niet meer dan MaxItems en opslaat in de ontvanger, en vervolgens de voortgang in de bron bevestigt. */ const MaxItems = 9999 type Producer interface { // Next geeft terug: // - een batch van items om te verwerken // - een cookie om te bevestigen wanneer de verwerking is voltooid // - een fout Next() (items []any, cookie int, err error) // Commit wordt gebruikt om de gegevensbatch als verwerkt te markeren Commit(cookie int) error } type Consumer interface { Process(items []any) error } func Pipe(p Producer, c Consumer) error { var buf []any var cookies []int for { items, cookie, err := p.Next() if err != nil { return err } buf = append(buf, items...) cookies = append(cookies, cookie) if len(buf) >= MaxItems { if err := c.Process(buf); err != nil { return err } for _, c := range cookies { if err := p.Commit(c); err != nil { return err } } buf = buf[:0] cookies = nil } } if len(buf) > 0 { if err := c.Process(buf); err != nil { return err } for _, c := range cookies { if err := p.Commit(c); err != nil { return err } } } return nil }

Middle
Яндекс
134

Een tabel met (id PRIMARY KEY, data JSON) — is een PostgreSQL-index erg goed voor zoeken op sleutel?

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

Wat is het verschil tussen virtualisatie en containerisatie?

Middle
YadroYadro
134

Kan een ander codeblok met accolades binnen een bestaande functie worden geplaatst?

Junior — Middle
134

Hoe hebt u de taken gedefinieerd en geformuleerd in uw vorige functie?

Junior — Middle
Сбер КонтактСбер Контакт
134

Hoe is de uiteindelijke code geïmplementeerd in de productieomgeving in uw laatste project?

Junior — Middle
IDT
Киберпротект
134

Hoe werkt de bewerking van het toevoegen van een nieuw element aan een slice in een programmeertaal?

Junior — Middle
134
/412