Sobes.tech

Что такое slice? Как он устроен внутри?

Senior
Магнит Тех
5

Как ускорить медленный API endpoint — какие подходы есть?

Middle+
VK music
5

Сколько микросервисов было в кластере и сколько можешь удерживать в голове?

Middle+
МВидео/эльдорадо
5

Какова причина твоего ухода из предыдущей компании?

Middle+
Гоуланг
5

Использовали ли вы подходы для распределённых транзакций?

Senior
техвил
5

Почему в зону ответственности кандидата был добавлен сервис антифрод-проверок?

Senior
КасперскийКасперский
5

Может ли быть однонодовый кластер Kubernetes?

Middle
Small
5

Исправьте реализацию cleanup, используя обычный цикл for вместо range. Объясните финальную логику очистки.

Middle+
ООО Дэстэн Партнерс
5

Расскажи о своей сторонней занятости. Есть ли что-то, что будет отвлекать тебя от полного погружения в работу?

Senior
Sequoia Ads
5

Что такое Two-Phase Commit?

Senior
purrweb
5

Реализуйте функцию cleanup для периодической очистки устаревших данных из bucket'ов. Как организовать фоновую горутину?

Middle+
ООО Дэстэн Партнерс
5

Расскажи про репликацию в PostgreSQL: виды, синхронная vs асинхронная.

Senior
Mayflower
5

Чем отличается шардирование от партиционирования?

Senior
Small
5

Какие правила (аксиомы) работы с каналами существуют в Go?

Senior
RedLab
5

/ * Есть приложение с микросервисной архитектурой. Микросервис можно абстрагировать с помощью интерфейса Backend. Для доступа к одному экземпляру микросервиса можно использовать тип BackendImpl, который уже реализован. Для каждого микросервиса есть несколько десятков запущенных экземпляров, каждый из которых доступен по своему адресу addr. Однако отдельные экземпляры микросервиса ненадежны: они могут падать, быть недоступными либо перегруженными. Поэтому вам нужно реализовать тип Balancer, который также реализует интерфейс Backend и осуществляет client-side балансировку нагрузки между экземплярами микросервиса, выбирая каждый раз **наименее нагруженный** экземпляр. * / type Request interface{} type Response interface{} type Backend interface { Invoke(ctx context.Context, req Request) (Response, error) } var _ Backend = &BackendImpl{} // addr содержит ip:port конкретного экземпляра func NewBackend(addr string) *BackendImpl type Balancer struct { // TODO } var _ Backend = &Balancer{} // addrs содержат адреса всех балансируемых экземпляров func NewBalancer(addrs []string) *Balancer { // TODO }

Middle
Яндекс
5

Как оптимизировать транзакцию с блокировкой строки при высокой нагрузке (проблема бутылочного горлышка при регистрации по инвайт-коду)?

Senior
Не указано
5

Что такое garbage collector в Go?

Senior
VKVK
5

Было ли критично что данные в кэше могут быть неактуальны?

Middle+
А7
5

Что такое slice и чем отличается от массива?

Senior
Магнум
5

Предложите индекс для таблицы users с полями gender и age, если нужно выбирать пользователей по полу или возрасту

Middle
VKVK
5
/365