Качественный дизайн обладает слабой связанностью (low coupling) и сильной связностью (high cohesion). Это значит, что программный компонент имеет небольшое число внешних связей и отвечает за решение близких по смыслу задач....
Распределенные Системы. Брендан Бёрнс. Паттерны проектирования обслуживающих систем
Шардинг и репликация...
Распределенные Системы. Брендан Бёрнс. Одноузловые паттерны проектирования
Контейнеры — основной строительный элемент паттернов, но в конечном итоге именно группа контейнеров, локализованная на одной машине, представляет собой базовый элемент паттернов проектирования распределенных систем....
Распределенные Системы. Брендан Бёрнс. Введение
Брендан Бёрнс излагает в своей книге абсолютный минимум, необходимый для правильного проектирования распределенных систем....
Race Condition и Data Race
Race condition и data race — две разные проблемы многопоточности, которые часто путают. Попробуем разобраться....
Выравнивание И Заполнение Структур
Разбираемся с такими понятиями, как: type alignment guarantees, type sizes и structure padding....
Паттерны Проектирования На Go. Functional Options.
Проектирование — это почти всегда не просто. Чаще всего это задача нахождения компромиссов....
Паттерны Проектирования На Go. Observer.
Существует как минимум два способа общения между двумя программными компонентами....
Закон Амдала
С точки зрения параллелизма, как пути для повышения эффективности вычислений, существует две крайности....
Method sets в Go
Набор методов которые являются интерфейсом данного типа....