Как заменить Кафку на Аэрон - PullRequest
0 голосов
/ 02 мая 2020

В настоящее время торговая система нашей производственной среды использует Kafka. Поскольку латентность Kafka слишком высока, мы надеемся заменить Kafka на Aeron. Как правильно использовать Aeron?

1 Ответ

0 голосов
/ 03 мая 2020

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

Задержки Kafka имеют порядок миллисекунд в то время как задержки Aeron обычно измеряются в микросекундах .

Что именно вам потребуется для построения в Aeron, очень сильно зависит от вашего варианта использования.

Одно из основных применений Кафка как постоянная очередь.

Чтобы создать простую постоянную очередь для одного варианта использования издателя. Вам потребуется:

Publisher

  • ArchivingMediaDriver - этот компонент запускается и Aeron MediaDriver, который обрабатывает отправку / получение сообщений по сети, и и Archive, который позволяет записывать и воспроизводить потоки.
  • A Publication для отправки сообщений для записи в архив. См. AeronArchive.addRecordedPublication.

Subsciber (s)

  • MediaDriver - этот компонент обрабатывает отправку / получение сообщений по сети.
  • A Susbcription, который воспроизводит данные с определенной позиции c в записанном потоке сообщений. См. AeronArchive.replay.

В примерах аэронов есть примеры этого.

Задержка может быть дополнительно уменьшена за счет того, что издатель отправляет сообщения через многоадресную рассылку / MD C, а подписчик использует ReplayMerge для плавного перехода от записанного потока до прямого эфира.

Стоит отметить, что real-logi c предоставляет коммерческую поддержку.

...