Архитектура¶
Архитектура и инженерные решения экосистемы.
- 2026-09-07 — Circuit breaker должен быть отдельным для каждого origin, а не клиента
- 2026-09-07 — UUIDv7 как ключ партиционирования PostgreSQL
- 2026-09-07 — Безопасные повторы gRPC: какие статусы действительно стоит повторять
- 2026-09-07 — Должно ли приложение создавать топики Kafka при запуске?
- 2026-09-07 — Доставка exactly-once — миф; однократные эффекты реальны
- 2026-09-07 — Идемпотентность в цепочке микросервисов
- 2026-09-07 — Ключи идемпотентности: часть, которую обычно реализуют неправильно
- 2026-09-07 — Когда при сбое Redis стоит продолжать работу?
- 2026-09-07 — Корректная остановка в Kubernetes — это протокол, а не обработчик сигнала
- 2026-09-07 — Модели и схема БД разошлись. Заметит ли CI?
- 2026-09-07 — Надёжность — это не retry=3
- 2026-09-07 — Ошибки без привязки к транспорту: одна ошибка предметной области, ответы HTTP и gRPC
- 2026-09-07 — Перестаньте передавать AsyncSession повсюду
- 2026-09-07 — Повторы могут усугубить сбой: проектируем бюджет повторных попыток
- 2026-09-07 — Политика хранения партиций — это не DROP TABLE
- 2026-09-07 — Почему жизненный цикл приложения не должен принадлежать FastAPI
- 2026-09-07 — Почему перехватчики gRPC ломаются на потоковых RPC
- 2026-09-07 — Почему я перестал писать обёртки над HTTP-клиентами
- 2026-09-07 — Проверка здоровья Redis: одного PING недостаточно
- 2026-09-07 — Прогрев, readiness и liveness — три разные задачи
- 2026-09-07 — Пул gRPC-каналов нельзя строить только по адресу
- 2026-09-07 — Транзакционный inbox: вторая половина паттерна outbox
- 2026-09-07 — Что происходит, когда Kafka недоступна целый час?
- 2026-09-07 — Ядро без зависимостей: зачем инфраструктурным библиотекам необязательные зависимости
- 2026-09-06 — Таймаут — не дедлайн: как теряется бюджет времени в микросервисах
- 2026-05-15 — Паттерн Transactional Outbox на Python: omni-box