Saga Pattern: оркестрация или хореография паттерн для управления распределёнными транзакциями Saga представляет собой последовательность локальных транзакций один из вариантов — оркестрация, при которой используется…
Как в Go выполнять HTTP-запросы асинхронно? тема: конкурентность, net/http, goroutines параллельный запуск запросов выполняется через goroutines каждый HTTP-запрос помещается в отдельную goroutine (go func()) для…
В CQRS командная (write) и запросная (read) базы разделяются, чтобы эффективнее распределять нагрузку Изменения передаются с помощью асинхронной репликации Для этого применяют event sourcing либо событийную шину…
Паттерн периодического опроса (Polling) способ организации взаимодействия между клиентом и сервером клиент регулярно отправляет запросы через установленный интервал сервер возвращает текущий статус готовности либо…
Как в Go создать worker pool для обработки задач? параллельно выполнять функции с помощью goroutines ограничивать количество активных воркеров через канал-буфер или семафор передавать задания рабочим горутинам через…
Применяли ли вы CQRS и DDD и с какими сложностями столкнулись? CQRS разделяет операции чтения и записи данных DDD сосредоточен на бизнес-домене и приближает модель к предметной области трудность CQRS — синхронизация…
В HTTP-клиенте Go тело ответа (resp.Body) необходимо закрывать, чтобы освободить занятые ресурсы Если этого не сделать, возможны утечки памяти и исчерпание файловых дескрипторов Кроме того, соединение в пуле…
Что представляет собой MVI? архитектурный паттерн для построения UI его название расшифровывается как Model-View-Intent Model — неизменяемое (immutable) состояние приложения View — отображает состояние и реагирует на…
Что представляет собой паттерн Outbox? шаблон интеграции, предназначенный для надёжной доставки событий и сообщений применяется, чтобы устранить проблему согласованности между базой данных и брокером сообщений сначала…