Мы рассматриваем использование кафки как важного посредника для обмена сообщениями.
Но, похоже, гарантия долговечности сообщений оптимистичен в дизайне репликации Кафка:Можно ли потерять признанное сообщение в кафке?
Для лучшей производительности, каждый последователь посылает подтверждение после сообщений записываются в память. Таким образом, для каждого зафиксированного сообщения мы гарантируем, что сообщение хранится в нескольких репликах в памяти Однако нет никакой гарантии, что любая копия сохраняла сообщение фиксации на диски.
В худшем случае, если отключение всего кластера в то же самое время до сброса подтвержденных сообщений на диск, некоторые данные могут потеряться. Можно ли избежать этого случая?
Спасибо за ответ, однако сообщение не очищается сразу (на основе интервала). всегда есть сообщения в памяти между интервалами и, возможно, потеряны, если все кластеры отключены. и кластер kafka не рекомендуется развертывать перекрестные центры обработки данных из-за отставаний репликации. –
Я обнаружил, что отставание в репликации стоит дополнительной долговечности. Хотя я не считаю, что флеш выполняется синхронно между всеми брокерами. Поэтому, если конфигурации промывки, о которых я упоминал, настроены правильно, вероятность потери данных очень низка. –