Как решить, подходит ли Кафка для хранения событий? - PullRequest
0 голосов
/ 18 февраля 2019

Я рассматриваю возможность использования Kafka для проекта источника событий (есть агенты, которые создают события, которые будут передаваться через Kafka на определенные процессоры ...)

Поскольку у меня нет практического опыта с источником событий и Kafka Iсделал некоторые исследования онлайн.И я обнаружил, что Кафка не подходит для поиска событий ( Использование Кафки как хранилища событий (CQRS). Хорошая идея? ).Есть цитата:

Хранилище SQL / NoSQL и Kafka в качестве брокера - лучший выбор, чем оставлять Kafka для управления обеими ролями, чтобы создать полное решение для полной функции

Существует KafkaСоавтор, говорящий

Кафка, будет очень хорошо работать как журнал для поиска событий.Он отказоустойчив, масштабируется до огромных размеров данных и имеет встроенную модель разделения.

Я до сих пор не могу решить, является ли использование Kafka хорошей идеей или нет в моем случае.Нужно ли мне хранилище событий, даже если у Кафки есть темы?

Мне бы хотелось иметь простой список вопросов, которые я должен задать себе, который поможет мне решить, использовать ли Кафку один или использовать хранилище событий Кафка +.

1 Ответ

0 голосов
/ 18 февраля 2019

Как решить, подходит ли Kafka для хранения событий?

Во-первых, вам необходимо решить, что, по вашему мнению, означает «источник событий».

Возможно, вы захотите просмотреть Что вы имеете в виду под "Событийно-управляемым" Мартином Фаулером.

Одна вещь, о которой стоит подумать, это то, есть лиинвариант домена, который необходимо поддерживать для раздела событий.В большинстве специализированных хранилищ событий имеются механизмы, позволяющие добавлять новые события в историю только в том случае, если они соответствуют ранее записанным событиям.

Во многих решениях из источников событий требуется много коротких историй -история для каждого выполнения заказа, для каждой отправки, для каждого экземпляра процесса - так что вы можете поддерживать одновременную запись в разные экземпляры, не теряя свойство целостности.

Если вам нужна поддержка для них, то вам нужноПосмотрите, насколько хорошо набор функций Kafka соответствует им (на самом деле ничем не отличается от оценки любого другого готового решения).

...