На странице собраны вопросы по Golang — от проверки базовых принципов до практического применения и архитектурных решений. В подборке чаще встречаются темы: backend, concurrency, database.
Liveness Probe и Readiness Probe в Kubernetes Механизмы Kubernetes для проверки состояния контейнеров Liveness Probe определяет, остаётся ли контейнер работоспособным и корректно ли выполняется его процесс Если…
Разница между defer, panic и recover в Go defer — отложенный вызов функции: она выполняется при выходе из текущей функции и обычно используется для освобождения ресурсов panic — прерывание обычного выполнения…
errors.Is и errors.As в Go: различия и сценарии использования пакет errors предназначен для работы с ошибками errors.Is: определяет, совпадает ли ошибка с заданной или встречается ли она внутри цепочки обёрнутых…
контекст: Go, выделение памяти new: резервирует память с нулевой инициализацией для указанного типа и возвращает указатель make: инициализирует и возвращает готовые к применению слайсы, карты, каналы new →…
Сравнение readinessGate и readinessProbe в Kubernetes Kubernetes: управление готовностью контейнера readinessProbe: определяет, может ли Pod принимать трафик, используя HTTP, TCP или exec-проверку readinessGate:…
Разница между value receiver и pointer receiver При использовании value receiver метод получает копию значения структуры С pointer receiver метод получает указатель на исходную структуру Изменения внутри метода с…
В чём разница между Read Committed и Repeatable Read? уровни изоляции в СУБД (ACID) Read Committed: транзакция получает только зафиксированные данные защищает от грязных чтений допускает неповторяющиеся чтения…
Где в Go объявлять интерфейсы и как реализовать принцип инверсии зависимостей? Архитектура, интерфейсы и DI Интерфейс следует определять на стороне потребителя, а не компонента-поставщика Он фиксирует набор методов,…
Память обычно разделяют на стек и кучу. В стеке находятся локальные переменные и параметры функций. Размер стека ограничен, зато выделение и освобождение памяти выполняются быстро по принципу LIFO. В куче размещаются…
пакет для управления временем жизни операций передаёт таймауты, дедлайны и сигналы отмены обеспечивает распространение отмены между goroutines содержит кросс-сервисные метаданные (trace-id, auth) позволяет выполнять…
Роль папок в Go-проекте: cmd, adapters и delivery Разделение кода по зонам ответственности cmd: точка запуска и основной исполняемый файл adapters: связь с внешними системами (БД, API, сервисы) delivery: передача…
Есть ли в Go исключения (exception)? В Go нет традиционного механизма исключений Для ошибок и аварийных ситуаций предусмотрена связка panic/recover Вызов panic останавливает выполнение текущей горутины С помощью…