Может ли MongoDB ChangeStream feautre заменить технологии Pub / Sub? - PullRequest
0 голосов
/ 11 октября 2018

Я проходил через MongoDB ChangeStream, насколько я понимаю, он снижает риск создания оплога - в настоящее время мы готовим оплог для публикации данных в Kafka.

Пожалуйста, помогите мне понять, как лучше поменять потоки изменений по сравнению с технологиями Pub / Sub, такими как Kafka или RabbitMQ

1 Ответ

0 голосов
/ 19 декабря 2018

ChangeStreams не следует сравнивать с технологиями Pub / Sub - ChangeStreams предоставляют безопасный способ обеспечить возможность сбора и изменения событий изменения данных (в реальном времени) и их обработки (и, как вы правильно заметили, ранее вам приходилосьзавершить оплог в MongoDB, чтобы достичь аналогичного результата, который имел свой собственный набор проблем, рисков и сложностей, которые облагали налогом разработчика).

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

ПокаChangeStreams демонстрируют поведение, подобное Pub / Sub, с точки зрения идентификации / обработки событий, где сходство прекращается.Типичным / распространенным случаем использования, когда вы заинтересованы в захвате / идентификации событий изменения данных в MongoDB для последующей обработки, является создание Kafka Producer, который использует драйвер MongoDB, создает экземпляр ChangeStream и для каждого соответствующего события, происходящего в MongoDB (становится доступным через ChangeStream) передает его на Kafka.

...