Sobes.tech

Golang

func (r *PayoutRepository) Payout(advertiserID, partnerID string, amount float32) error { advertiser, err := r.find(advertiserID) if err != nil { return err } partner, err := r.find(partnerID) if err != nil { return err } advertiser.Balance -= amount partner.Hold -= amount partner.Balance += amount if err := r.save(advertiser); err != nil { return err } if err := r.save(partner); err != nil { return err } r.totalPayouts++ return nil }

Senior
Pasul LTD
64

Formalizzazione dei requisiti del sistema di matchmaking: come cercare una partita, cosa fare se non si trova un avversario, come convalidare le mosse, è necessario un timer, come aggiornare la classifica, è necessaria una cronologia delle partite, cosa fare in caso di disconnessione?

Senior
Hi Rockits
64

Quali regole di lavoro con i canali bisogna conoscere durante lo sviluppo (chiuso, aperto, quando cosa si può fare)?

Senior
техвил
64

Ti è mai capitato di fare qualcosa per molto tempo e alla fine non essere implementato o essere rinviato in pila?

Senior
Ozon ФинтехOzon Финтех
64

Ci sono pre-offerte in mano?

Senior
Датаджайл
64

Quali microservizi hai sviluppato? Di che tipo di servizi si tratta?

Senior
wilix
64

Se crei una mappa, aggiungi un milione di valori, poi rimuovi tutti gli elementi e chiami il GC, la memoria tornerà al valore originale?

Senior
VK CloudVK Cloud
64

// Correggere il codice in modo che le richieste siano concorrenti e venga visualizzato il codice di risposta // e in caso di errore, visualizzare il log e continuare l'elaborazione package main import "net/http" var addrs = []string{"[link] "[link] "[link] "[link] "[link] "[link] "[link] func main() { var wg sync.WaitGroup data := make(map[string]bool) for _, url := range addrs { wg.Add(1) if !data[url] { data[url] = true go func(url string) { defer wg.Done() resp, err := http.Get(url) if err != nil { log.Println(err) return } log.Println(resp.StatusCode) }(url) } } wg.Wait() }

Senior
ИП Ганус Александр Андреевич
64

Cos'è la notazione O (notazione Big O)?

Middle
VKVK
64

// Compito 3 // Descrivere quale compito risolve questo codice // Quali problemi ci sono in questa soluzione? // Come riscriveresti questo codice?

Senior
МТС CloudМТС Cloud
64

Perché in sync.Map non c'è un metodo per ottenere il numero di elementi (len)?

Senior
VK CloudVK Cloud
64

Un puntatore può puntare sia allo stack che all'heap?

Middle
VKVK
63

Come vengono elaborati i messaggi inviati agli utenti offline?

Senior
Яндекс
63

Perché è necessaria la combinazione Load Balancer + API Gateway? Qual è il ruolo di ciascun componente?

Senior
Hi Rockits
63

L'evento arriva nel primo data center da Kafka, lo catturiamo e lo memorizziamo in Redis. Come sono arrivati questi dati in tutti e tre i data center?

Middle
Aliexpress
63

O Redis era in un singolo data center, e tutti si rivolgevano a lui?

Middle
Aliexpress
63

Qual è la differenza tra un array e uno slice in Go?

Middle
VKVK
63

Hai esperienza di progettazione di sistemi — pensare all'architettura da zero, difenderla davanti al team?

Middle+
Штрафов нет
63

Viene creato un nuovo thread del sistema operativo per ogni goroutine?

Senior
техвил
63

Ci sono 3 entità: utente, chat, messaggio • L'utente ha un nome e una data di registrazione • La chat ha un nome e una data di creazione • Il messaggio ha testo, autore e data di creazione • Un utente può essere in più chat contemporaneamente • Il messaggio appartiene obbligatoriamente a una chat e non può appartenere a più di una chat contemporaneamente • È necessario descrivere il dominio sotto forma di tabelle

Senior
Ozon ФинтехOzon Финтех
63
/411