Golang вопросы собеседований
@notxxx1 - админ @Golang_google - Golang для разработчиков @itchannels_telegram - 🔥лучшие из ит @golangl - chat @golangtests - golang tests @golang_jobsgo - go chat jobs @ai_machinelearning_big_data - AI @data_analysis_ml РКН: clck.ru/3FmtKd
Ko'proq ko'rsatish📈 Telegram kanali Golang вопросы собеседований analitikasi
Golang вопросы собеседований (@golang_interview) Rus til segmentidagi kanali faol ishtirokchi. Hozirda hamjamiyat 15 056 obunachidan iborat bo'lib, Texnologiyalar & Aralashmalar toifasida 8 567-o'rinni va Rossiya mintaqasida 43 438-o'rinni egallagan.
📊 Auditoriya ko‘rsatkichlari va dinamika
невідомо sanasidan buyon loyiha tez o‘sib, 15 056 obunachiga ega bo‘ldi.
27 Oktabr, 2026 dagi oxirgi ma’lumotlarga ko‘ra kanal barqaror faollikka ega. Oxirgi 30 kunda obunachilar soni -5 ga, so‘nggi 24 soatda esa 9 ga o‘zgardi va umumiy qamrov yuqori darajada qolmoqda.
- Tasdiqlash holati: Tasdiqlanmagan
- Jalb etish (ER): Auditoriya o‘rtacha 18.93% darajada jalb etiladi. Nashrdan keyingi dastlabki 24 soatda kontent odatda umumiy obunachilar sonining 9.64% ini tashkil etuvchi reaksiyalarni to‘playdi.
- Post qamrovi: Har bir post o‘rtacha 2 850 marta ko‘riladi; birinchi sutkada odatda 1 451 ta ko‘rish yig‘iladi.
- Reaksiyalar va o‘zaro ta’sir: Auditoriya faol: har bir postga o‘rtacha 13 ta reaksiya keladi.
- Tematik yo‘nalishlar: Kontent git, docker, github, контейнер, sql kabi asosiy mavzularga jamlangan.
📝 Tavsif va kontent siyosati
Muallif resursni shaxsiy fikrni ifoda etish maydoni sifatida ta’riflaydi:
“@notxxx1 - админ
@Golang_google - Golang для разработчиков
@itchannels_telegram - 🔥лучшие из ит
@golangl - chat
@golangtests - golang tests
@golang_jobsgo - go chat jobs
@ai_machinelearning_big_data - AI
@data_analysis_ml
РКН: clck.ru/3Fmt...”
Yuqori yangilanish chastotasi (oxirgi ma’lumot 28 Oktabr, 2026 da olingan) sababli kanal doimo dolzarb va katta qamrovli bo‘lib qoladi. Analitika auditoriya kontent bilan faol hamkorlik qilishini, uni Texnologiyalar & Aralashmalar toifasidagi muhim ta’sir nuqtasiga aylantirishini ko‘rsatadi.
shard := hash(key) % 256
// Блокируем только выбранную часть кеша
parts[shard].mu.Lock()
parts[shard].data[key] = value
parts[shard].mu.Unlock()
Теперь запись user:42 может выполняться параллельно с записью user:99, если они попали в разные шарды.
А просто заменить `Mutex` на `RWMutex`? В этих замерах это не решило проблему масштабирования, а при записях результат оказался хуже обычного мьютекса.
Есть нюанс: если почти все обращения идут к нескольким горячим ключам, нагрузка снова сосредоточится на отдельных блокировках.
256 — результат конкретного бенчмарка. Выбирай число шардов по своей нагрузке, а усложняй кеш после замеров.
https://strebkov.dev/posts/shard-your-locks/
func (r *RateLimiter) Allow(ctx context.Context) (bool, error) {
if r.redis == nil {
return false, nil
}
return r.checkLimit(ctx)
}
Паники нет. Но ошибка инициализации превратилась в обычное «доступ запрещён». Сервис работает, запросы отклоняются, причина скрыта.
Обработай сбой там, где он возник:
client, err := NewRedisClient(addr)
if err != nil {
return fmt.Errorf("init redis: %w", err)
}
limiter := NewRateLimiter(client)
Если контракт NewRedisClient гарантирует ненулевой клиент при err == nil, внутреннему коду не нужно заново проверять эту зависимость при каждом вызове.
С входящими запросами тот же принцип: проверяй данные на границе системы, прежде чем передавать их бизнес-логике.
Проверка nil нужна, когда отсутствие значения допустимо или входные данные ещё не проверены. Но молча возвращать «успех» для невозможного состояния — способ спрятать баг.
Перед очередным `if x == nil` спроси: это нормальное состояние или ошибка, которую пропустили выше?
https://konradreiche.com/blog/excessive-nil-pointer-checks-in-go/ crypto/x509, связанная с проверкой цифровых сертификатов.
Что изменилось:
- Ограничено доверие к небезопасным промежуточным сертификатам.
- Verify больше не возвращает цепочки с такими сертификатами.
- Повышена безопасность проверки TLS-сертификатов.
Анонс: https://groups.google.com/g/golang-announce/c/66pojueaQek/m/tmWX2Pq9AgAJ
Скачать: https://go.dev/dl/
@Golang_googleХорош бояться Кафку: ломаем и чиним Go-сервис в прямом эфиреПредыстория такая: пока меня не было дома, мой кот Коткинс добрался до телефона и начал заказывать себе вкусняшки с моей карты. Приложение кидает заказ в Кафку, сервис оплаты читает его и списывает деньги. Вот эту систему и будем ломать) Что разберём на уроке: 🟢Без занудных определений разберёмся, что такое продюсер, топик, партиции, группа и смещение. Просто проследим один заказ в Kafka UI от кнопки до списания 🟢Трижды попробуем сломать систему: потеряем заказ, спишем деньги дважды и завалим очередь. И разберёмся, почему так вышло 🟢По каждой поломке посмотрим, какие есть варианты починки и чем плох каждый 🟢Попросим нейронку написать консюмер для оплаты и посмотрим, переживёт ли он повтор сообщения 🟢Расскажу, когда Кафка вообще не нужна и можно спокойно взять RabbitMQ 🟢В конце отдам репозиторий со всем кодом урока, чтобы ты мог повторить всё у себя 🟢И конечно же, анонсирую новый поток своего курса по микросервисам на Go Регистрироваться никуда не надо, ссылка на урок будет прямо в канале по микросервисам: Залететь в канал с уроком P.S. Записи не будет, поэтому жду всех в онлайне) Реклама. ИП Козырев Олег Вячеславович, ИНН 440315249608, erid: 2W5zFHLyLLR
Хорош бояться Кафку: ломаем и чиним Go-сервис в прямом эфиреПредыстория такая: пока меня не было дома, мой кот Коткинс добрался до телефона и начал заказывать себе вкусняшки с моей карты. Приложение кидает заказ в Кафку, сервис оплаты читает его и списывает деньги. Вот эту систему и будем ломать) Что разберём на уроке: 🟢Без занудных определений разберёмся, что такое продюсер, топик, партиции, группа и смещение. Просто проследим один заказ в Kafka UI от кнопки до списания 🟢Трижды попробуем сломать систему: потеряем заказ, спишем деньги дважды и завалим очередь. И разберёмся, почему так вышло 🟢По каждой поломке посмотрим, какие есть варианты починки и чем плох каждый 🟢Попросим нейронку написать консюмер для оплаты и посмотрим, переживёт ли он повтор сообщения 🟢Расскажу, когда Кафка вообще не нужна и можно спокойно взять RabbitMQ 🟢В конце отдам репозиторий со всем кодом урока, чтобы ты мог повторить всё у себя 🟢И конечно же, анонсирую новый поток своего курса по микросервисам на Go Регистрироваться никуда не надо, ссылка на урок будет прямо в канале по микросервисам: Залететь в канал с уроком P.S. Записи не будет, поэтому жду всех в онлайне) Реклама. ИП Козырев Олег Вячеславович, ИНН 440315249608, erid: 2W5zFHLyLLR
depends_on задаёт порядок запуска, но не ждёт, пока PostgreSQL начнёт принимать подключения. Для этого нужны healthcheck и condition: service_healthy.
Собрали 7 приёмов Docker Compose, которые помогут привести стек в порядок:
• Якоря YAML: общие настройки без копипасты.
• Healthcheck: запуск приложения после готовности базы.
• Профили: включение отладочных сервисов по необходимости.
• include: разделение большого файла на части.
• develop.watch: синхронизация кода и пересборка при изменении зависимостей.
• !reset и !override: явное удаление и замена настроек.
• configs.content: небольшие конфиги прямо в Compose-файле.
С примерами кода и командой docker compose config для проверки результата перед запуском.
https://uproger.com/docker-compose-7-priemov/Трек Tech: доклады про архитектурные решения, спорные идеи и реальные кейсы. 🎙 Дмитрий Буров, Senior Golang-разработчик, Lamoda Tech «Тернарный оператор в Go. Принять нельзя отклонить» 🎙 Станислав Королев, Senior Golang-разработчик, Авито «Почему spec-driven development плохо работает на микросервисах» 🎙 Эдгар Сипки, Founder, EasyP && Sipki tech «MCP on Go, или Как случайно сломать безопасность вашей системы?»
Трек Activities: круглый стол о будущем Go, «13 злых вопросов» экспертам и игры с призами.🗓 17 октября ⏰ 12:00–18:00 📍 Москва, ул. Крылатская, 15 ➡️ Все подробности и регистрация на сайте Реклама. ООО "ЛАМОДА ТЕХ". ИНН 7734461512. erid: 2W5zFH7TN3j
