Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍2
Что такое 🤓
Ответ:
Circuit Breaker (паттерн, реализованный в Resilience4j, Hystrix) — защищает систему от каскадных отказов. Он отслеживает вызовы внешних сервисов.
Если количество неудачных вызовов превышает порог, цепь размыкается (open) — все последующие вызовы немедленно возвращают ошибку (или fallback), не делая запроса. Через некоторое время цепь переходит в полуоткрытое (half-open) состояние — пропускает пробные запросы, и если они успешны, цепь снова замыкается.
Это предотвращает тайм-ауты и перегрузку сбойных сервисов, давая им время восстановиться.
#собеседование
Circuit Breaker и какую роль играет в микросервисах? Ответ:
Если количество неудачных вызовов превышает порог, цепь размыкается (open) — все последующие вызовы немедленно возвращают ошибку (или fallback), не делая запроса. Через некоторое время цепь переходит в полуоткрытое (half-open) состояние — пропускает пробные запросы, и если они успешны, цепь снова замыкается.
Это предотвращает тайм-ауты и перегрузку сбойных сервисов, давая им время восстановиться.
#собеседование
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
19. Read Model на событиях: выбор между JOIN, REST, Replica и CQRS
В этом видео я разбираю реальный вызов: бизнес хочет аналитику по жизненному циклу заказа – время создания, оплаты, отправки уведомления. Данные живут в трёх независимых микросервисах (Order, Payment, Notification) у двух из которых свои базы данных.
Как построить аналитику, не нарушая инкапсуляцию и не создавая синхронной связанности?
Я пройду через все популярные альтернативы:
🔹 SQL JOIN между базами – почему это антипаттерн
🔹REST-агрегация – почему не масштабируется
🔹Read Replica – почему не решает проблему агрегации
🔹CDC → ClickHouse – когда это оправдано, а когда избыточно
🔹CQRS + Event‑driven Read Model Projection – наш выбор и его цена
Я не просто показываю «как сделать CQRS», а объясняю процесс принятия решения: оцениваю стоимость, производительность, надёжность, сложность и поддерживаемость.
Что вы узнаете:
🔹Как отличить операционную аналитику от OLAP-хранилища
🔹Почему CQRS – это не «две базы данных», а принцип разделения команд и запросов
🔹Как строить идемпотентные проекции с помощью INSERT ... ON CONFLICT
🔹Как защитить read-модель от старых событий
🔹Как оценивать архитектурные альтернативы по таблице критериев
Исходный код проекта на GitHub наверняка заслуживает Ваших звезд!🙂
Ссылка на Youtube
Ссылка на Рутьюб
Смотрите, ставьте лайки, подписывайтесь на каналы!✌️
Жду ваших реакций и оценок🙂
В этом видео я разбираю реальный вызов: бизнес хочет аналитику по жизненному циклу заказа – время создания, оплаты, отправки уведомления. Данные живут в трёх независимых микросервисах (Order, Payment, Notification) у двух из которых свои базы данных.
Как построить аналитику, не нарушая инкапсуляцию и не создавая синхронной связанности?
Я пройду через все популярные альтернативы:
🔹 SQL JOIN между базами – почему это антипаттерн
🔹REST-агрегация – почему не масштабируется
🔹Read Replica – почему не решает проблему агрегации
🔹CDC → ClickHouse – когда это оправдано, а когда избыточно
🔹CQRS + Event‑driven Read Model Projection – наш выбор и его цена
Я не просто показываю «как сделать CQRS», а объясняю процесс принятия решения: оцениваю стоимость, производительность, надёжность, сложность и поддерживаемость.
Что вы узнаете:
🔹Как отличить операционную аналитику от OLAP-хранилища
🔹Почему CQRS – это не «две базы данных», а принцип разделения команд и запросов
🔹Как строить идемпотентные проекции с помощью INSERT ... ON CONFLICT
🔹Как защитить read-модель от старых событий
🔹Как оценивать архитектурные альтернативы по таблице критериев
Исходный код проекта на GitHub наверняка заслуживает Ваших звезд!
Ссылка на Youtube
Ссылка на Рутьюб
Смотрите, ставьте лайки, подписывайтесь на каналы!
Жду ваших реакций и оценок
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1🔥1🤯1