Как работает context.Done() и почему закрытие канала получают все горутины? context.Done() — канал для наблюдения за отменой контекста возвращает канал, закрываемый при отмене или завершении заданного времени одно…
Как работают generics в TypeScript? язык программирования TypeScript инструмент обобщённого программирования позволяет создавать функции и классы, использующие параметры типов конкретный тип указывается во время…
Механизмы retry и circuit breaker retry повторно отправляет запрос после ошибки и особенно полезен при временных сбоях основные настройки: максимальное число попыток, интервал между ними и экспоненциальный бэкофф…
Три принципа ООП: инкапсуляция, наследование и полиморфизм ООП — это парадигма, в которой структура программы строится вокруг объектов Инкапсуляция: изоляция данных и обращение к ним через методы для защиты…
Чем отличаются errors.Is, errors.As и errors.Join Улучшения работы с ошибками, появившиеся в Go 1.13 и более поздних версиях errors.Is определяет, присутствует ли в ошибке заданная целевая ошибка: сравнивает её через…
Контекст: работа с Git и объединение веток Конфликт появляется, когда две ветки изменяют одни и те же строки несовместимым образом В этом случае Git приостанавливает слияние и отмечает файлы, содержащие конфликты Для…
Индекс — это структура данных, предназначенная для ускорения поиска в БД На практике его часто строят на основе B-дерева или B+-дерева B-дерево сохраняет балансировку и обеспечивает логарифмическую сложность поиска…
Анализ требований: пропускная способность, время отклика и возможности масштабирования Выбор модели БД: SQL с шардированием либо NoSQL для горизонтального масштабирования Применение кэширования (Redis/Memcached),…
Проверка взаимодействия микросервисов через брокер сообщений Kafka Интеграционные тесты: проверка передачи сообщений через тестовый брокер, например embedded Kafka Контрактные тесты: проверка соответствия сообщений…
Как проверить сохранение данных в БД при скрытых сбоях контроль целостности посредством транзакций (ACID) регистрация операций записи в audit log контроль уникальности и ссылочной целостности, включая внешние ключи…
Spring DI — механизм внедрения зависимостей, работающий внутри IoC-контейнера Управлением объектами занимаются Bean Factory и ApplicationContext Компоненты автоматически создаются и связываются по типу или аннотациям…
В Go применяется параллельный конкурентный GC В основе лежит трёхфазный алгоритм: маркировка (tracing), приостановка мира и очистка На этапе маркировки GC определяет объекты, которые остаются достижимыми…