digital-garden/source/книги/книготека/Кафка в действии.md
2024-06-13 21:01:37 +03:00

22 lines
2.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Apache Kafka это платформа потоковой передачи, которую можно использовать для быстрой обработки большого коли- чества событий.
Доставка сообщений в Kafka может осущест- вляться как минимум тремя способами:
- не менее одного раза (at-least-once) сообщение будет отправля- ется потребителям до тех пор, пока те не подтвердят его полу- чение;
- не более одного раза (at-most-once) сообщение отправляется только один раз и в случае сбоя не отправляется повторно;
- точно один раз (exactly-once) потребитель гарантированно получит сообщение ровно один раз.
![](c85390a0-94b2-48f9-8dea-02d9bacc2562.jpg)
![](49356685-5474-490b-975a-d198d7f966bb.jpg)
![](3ad2bf28-e12a-4be7-9336-c38c7b5d7018.jpg)
Помимо различных семантик доставки, есть еще одно общее преимущество использования брокера сообщений если прило- жение-потребитель потерпело аварию или остановлено для тех- нического обслуживания, то производитель может не ждать, пока его сообщение будет обработано. Когда потребители возобновят работу и вернутся в сеть, они смогут продолжить с того места, на котором остановились, и обработать ожидающие сообщения.
Платформа Kafka изначально была ориентирована на работу с несколькими потребителями. Это означает, что приложение, чи- тающее сообщение из брокера сообщений, не делает это сообще- ние недоступным для других приложений, которые также могут за- хотеть его получить и использовать.
Сообщение, также называемое записью, является основной частью данных, проходящих через Kafka. Сообщения это представле- ние ваших данных в Kafka. Каждое сообщение имеет отметку времени, значение и необязательный ключ. При желании также можно добавлять свои заголовки
![](ae8f6a39-5a3f-4195-8f6a-0b96e492413c.jpg)