
Go Patterns. Circuit Breaker
Circuit Breaker предотвращает попытки приложения выполнить операцию, которая скорее всего завершится неудачно, что позволяет продолжить работу дальше не тратя важные ресурсы, пока известно, что проблема не устранена....
Circuit Breaker предотвращает попытки приложения выполнить операцию, которая скорее всего завершится неудачно, что позволяет продолжить работу дальше не тратя важные ресурсы, пока известно, что проблема не устранена....
Любое взаимодействие программных компонентов ненадежно. Вызываемый компонент может быть временно недоступен или возвращать различные ошибки....
Чем раньше будет обнаружена проблема, тем меньше усилий потребуется для ее разрешения...
Рассмотрим несколько примером Goroutine Leaks...
При работе с параллельным кодом существует несколько различных вариантов безопасной работы...
Пакет sync содержит примитивы, которые наиболее полезны для низкоуровневой синхронизации доступа к памяти....
В 1965 году Эдсгер Дейкстра сформулировал задачу об обедающих философах. Задача была иллюстрацией проблем синхронизации при разработке параллельных алгоритмов и техник решения этих проблем....
Race condition и data race — две разные проблемы многопоточности, которые часто путают. Попробуем разобраться....
Разбираемся с такими понятиями, как: type alignment guarantees, type sizes и structure padding....
Проектирование — это почти всегда не просто. Чаще всего это задача нахождения компромиссов....