Sobes.tech

Golang

Qual recurso você desenvolveu do qual se orgulha? Conte-nos sobre a última tarefa interessante.

Senior
WildberriesWildberries
111

Fale sobre otimização de consultas ao banco de dados: como identificaram consultas problemáticas e o que fizeram?

Senior
А7
111

Como funciona o GOMAXPROCS e para que serve o P (processador) no modelo GMP?

Middle
VKVK
111

Sabes o que são Xmin e Xmax no PostgreSQL?

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

Para onde vão as goroutines ao serem criadas — para a fila local ou global do agendador Go?

Senior
Базис
111

Houve alguma situação em que a sua hipótese ou abordagem mostrou um resultado ruim?

Senior
I-teco
111

Por que era responsável a sua equipa na [empresa]?

Senior
X5 techX5 tech
111

Como cancelar a reserva após o término do tempo limite (5 minutos)?

Middle
WildberriesWildberries
111

Como avalias a tua experiência com Kubernetes?

Senior
sber tech
111

Quais são as principais construções usadas para gerenciar e executar goroutines na linguagem de programação?

Junior — Middle
Evrone
111

O que pode ser feito para evitar a evacuação do mapa em um serviço de alta carga?

Middle+
OZONOZON
111

O que deve ser melhorado na implementação do mapa ordenado, se tivesse mais tempo? Quais são os possíveis problemas e direções de desenvolvimento da biblioteca?

Senior
Cloud.ru
111

/* É dada uma string de caracteres. Encontrar o número de pares de índices i e j (i <= j), entre os quais não há caracteres repetidos. Para a string "aba", a resposta é 5: podem não ser apenas ASCII [0, 0] ("a") [0, 1] ("ab") [1, 1] ("b") [1, 2] ("ba") [2, 2] ("a") */

Intern
Яндекс
111

tipo Response interface{} tipo Backend interface { Invoke(ctx context.Context, req Request) (Response, error) } var _ Backend = &BackendImpl{} // addr contém ip:porta de uma instância específica 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) { se len(b.backends) == 0 { return nil, fmt.Errorf("O número de backends no slice é 0") } b.mu.Lock() index := b.index se 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 contém os endereços de todas as instâncias balanceadas func NewBalancer(addrs []string) *Balancer { // TODO backends := make([]*BackendImpl, len(addrs))

Middle
Яндекс
111

O que é a troca de contexto das goroutines? Quem a realiza?

Senior
AstonAston
111

Qual é a complexidade das operações com map no pior caso em caso de colisões?

Senior
sber tech
111

Como funciona o map em Go?

Middle+
WildberriesWildberries
111

O que é um semáforo?

Senior
техвил
111

Índices compostos — o que colocar primeiro: igualdade ou intervalo?

Senior
Cloud.ru
111

Quais passos tomar para determinar a causa de um erro 500 num sistema de microsserviços?

Junior — Middle
111
/412