распределённая платформа для потоковой передачи сообщений Kafka использует модель доставки "at least once" обеспечивает запись в логи партиций с последующей репликацией при сбоях или повторной обработке возможны…
Надёжность доставки в Kafka обеспечивается за счёт репликации данных между узлами кластера Для этого применяется механизм ISR (in-sync replicas): запись подтверждают только реплики, которые синхронизированы с лидером…
Гарантии доставки сообщений в RabbitMQ в асинхронной модели RabbitMQ представляет собой брокер сообщений, поддерживающий надежную доставку Применяются гарантии at-most-once, at-least-once и условно exactly-once Для…
Как обеспечить надёжность вызова внешнего сервиса при высокой нагрузке? Архитектура: асинхронное обращение через очередь сообщений Использовать очередь (RabbitMQ, Kafka) для буферизации запросов Добавить механизм…
Как обеспечить гарантированную доставку сообщений между микросервисами с помощью паттернов Outbox и Saga? гарантия доставки устраняет риски при асинхронном взаимодействии и сбоях Outbox: сообщение записывается вместе…
RabbitMQ — брокер сообщений, поддерживающий подтверждения (ACK) Настроить у потребителя ручные подтверждения (manual ACK) Если потребитель завершился до отправки ACK, сообщение сохраняется в очереди и передается…
Интеграция с внешним API или сервисом Настроить повторные попытки (retry) с экспоненциальным увеличением интервала Задать тайм-ауты для запросов и обрабатывать возникающие ошибки При недоступности сервиса сохранять…
data pipeline — это цепочка последовательных операций обработки данных надёжность достигается за счёт обработки ошибок, повторных попыток и мониторинга масштабируемость обеспечивают распределённые системы и…
Гарантии доставки в Kafka Kafka — распределённая очередь сообщений, рассчитанная на высокую доступность. В Kafka предусмотрены три режима доставки: at most once — сообщение доставляется без подтверждения, поэтому оно…
область: распределённые системы, messaging основные модели: At-most-once, At-least-once, Exactly-once At-most-once: сообщение доставляется 0 или 1 раз; возможна потеря, но дубликаты не возникают At-least-once:…
Нефункциональные требования при проектировании приложения качество системы: быстродействие и устойчивость к сбоям безопасность: аутентификация, авторизация и защита данных масштабируемость: работа при увеличении…
Какими свойствами должен обладать хороший микросервис? возможность независимо разрабатывать и развёртывать сервис ясно очерченный бизнес-контекст (bounded context) небольшой и хорошо определённый API на базе…