На странице собраны вопросы по Golang — от проверки базовых принципов до практического применения и архитектурных решений. В подборке чаще встречаются темы: backend, concurrency, database.
Что такое Redis и где его применяют? In-memory key-value хранилище Главное преимущество — высокая скорость чтения и записи благодаря работе в оперативной памяти Поддерживает сложные структуры данных: списки,…
Что представляет собой VACUUM в PostgreSQL Управление памятью и удаление "мёртвых" строк (dead tuples) Выполняет очистку и сжатие таблиц после команд UPDATE/DELETE Актуализирует статистику, используемую оптимизатором…
Что такое backpressure и как реализовать его в системе очередей сообщений? обработка потоков и предотвращение перегрузки backpressure — команда отправителю снизить скорость не допускает переполнения очереди и потери…
Что представляет собой connection pool и для чего он используется? инструмент управления соединениями с БД кэш уже открытых подключений для их повторного использования уменьшает затраты на создание и закрытие…
connection pooling — это управление пулом уже открытых соединений с БД сокращает время, затрачиваемое на установку и закрытие соединений задаёт предел для числа одновременных подключений к Postgres увеличивает…
Конкурентный доступ: возникновение взаимной блокировки Ситуация возникает, когда две или более транзакции ожидают ресурсы друг друга При этом каждая транзакция удерживает ресурс, который требуется другой Если не…
Что такое gRPC и для чего его используют? gRPC — фреймворк удалённого вызова процедур (RPC) работает поверх HTTP/2 и поддерживает двунаправленную потоковую передачу сериализует данные через Protocol Buffers…
Что такое goroutine leak в Go и как найти утечку горутин? Go concurrency goroutine leak — это горутины, которые не завершают работу причина: блокировка на канале, mutex или операции I/O нет механизма завершения через…
Что такое inlining функции? оптимизация компилятора подстановка тела функции вместо её вызова отсутствие накладных расходов на вызов снижение задержек, связанных с переходами возможное увеличение размера бинарника…
Что представляет собой memory escape analysis и как определить размещение объекта в heap Область: управление памятью и оптимизация работы сборщика мусора Memory escape analysis — это анализ, который показывает,…
Mutex: назначение, разновидности и применение Mutex — примитив синхронизации, защищающий данные от одновременного доступа Реализует взаимное исключение: владеть mutex одновременно способен только один поток Основные…
Что такое race condition и как её ловить в Go? race condition — ситуация, в которой несколько го-рутин одновременно изменяют общие данные, из-за чего поведение программы становится непредсказуемым причина — отсутствие…