Sobes.tech

Golang

Peux-tu parler des canaux en Go ? À quoi servent-ils et comment sont-ils utilisés ?

Middle
VKVK
112

Combien de backends y avait-il dans l'équipe [entreprise] ?

Middle+
plata
112

Qu'est-ce qu'un deadlock et une condition de course, comment y faire face?

Middle
VKVK
112

À quoi sert un canal avec une structure vide chan struct{}?

Middle
Сбертех
112

Écrivez une requête SQL qui affiche **le nom du client**, sa **ville** et **le montant total** de toutes ses commandes. Seules les clients dont la dépense totale dépasse **1000** unités doivent apparaître dans le résultat. --- **Schéma des données :** 1. **Table `customers` :** - `customer_id` (int) – identifiant unique du client. - `customer_name` (varchar) – nom du client. - `city` (varchar) – ville de résidence. 2. **Table `orders` :** - `order_id` (int) – numéro unique de commande. - `customer_id` (int) – ID du client ayant effectué l'achat. - `total_amount` (decimal) – montant d'une commande spécifique.

Senior
Бюро 1440Бюро 1440
112

Quelle est la différence entre services et microservices?

Senior
Avanpost
112

Que se passe-t-il avec les autres goroutines pendant que certaines s'exécutent?

Senior
WildberriesWildberries
112

Que se passe-t-il si le service échoue au moment de la construction du batch ? Kubernetes a tué le pod — que se passe-t-il ?

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

Que fait sysmon en runtime dans Go?

Senior
X5 techX5 tech
112

Comment assurer l'ordre de traitement des messages dans Kafka?

Middle
Small
112

Que faut-il améliorer dans l'implémentation de la carte ordonnée si l'on disposait de plus de temps ? Quels sont les problèmes possibles et les axes de développement de la bibliothèque ?

Senior
Cloud.ru
112

Comment assurer la garantie de livraison du message dans Kafka par le producteur, même si le leader échoue?

Senior
МВидеоМВидео
112

Pourquoi le début de la condition pour vérifier les caractères n'est-il pas écrit dans l'implémentation?

Middle
VKVK
112

type Response interface{} type Backend interface { Invoke(ctx context.Context, req Request) (Response, error) } var _ Backend = &BackendImpl{} // addr contient l'adresse ip:port d'une instance spécifique func NewBackend(addr string) *BackendImpl type Balancer struct { // TODO backends []*BackendImpl index int mu sync.Mutex } var _ Backend = &Balancer{} func (b *Balancer) Invoke(ctx context.Context, req Request) (Response, error) { si len(b.backends) == 0 { return nil, fmt.Errorf("Le nombre de backends dans le slice est 0") } b.mu.Lock() index := b.index si b.index + 1 == len(b.backends) { b.index = 0 index = 0 } b.mu.Unlock() resp, err := b.backends[index].Invoke(ctx, req) return resp, err } // addrs contient les adresses de toutes les instances équilibrées func NewBalancer(addrs []string) *Balancer { // TODO backends := make([]*BackendImpl, len(addrs))

Middle
Яндекс
112

Comment partager la mémoire entre goroutines ? Dans quels cas est-il préférable d'utiliser Atomic, et dans quels Mutex/RWMutex/SyncMap ?

Senior
plata
112

Peux-tu donner les 3 choses principales auxquelles il faut faire attention lors d'une revue de code?

Senior
AvitoAvito
112

Comment fonctionne une map en Go?

Middle+
WildberriesWildberries
112

Comment vérifier la charge du CPU et de la mémoire sous Linux?

Middle+
Бюро 1440Бюро 1440
112

**Condition** Les requêtes vers plusieurs URL doivent être effectuées en parallèle. Il faut afficher les statuts HTTP et gérer les erreurs.

Senior
Бюро 1440Бюро 1440
112

Concernant la spécificité de la startup : il n'y a pas toujours une définition claire des tâches, elles peuvent être floues, il faut de l'initiative et de l'autonomie, la charge de travail peut être inégale. Comment vous sentez-vous face à cela ?

Senior
AstraTech
112
/412