Настройка производительности NATS IO

Я написал издатель, подписчик на Java. Делал кластеризацию также на уровне сервера. Умеет публиковать и подписывать сообщения объемом 30 КБ со скоростью 500 TPS (транзакция в секунду).

Но я хочу улучшить нашу производительность до более чем 2000 TPS. Пожалуйста, предложите, как добиться того же.

Я использовал Java с Apache Camel.

1 ответ

Вы использовали тег nats-streaming-server. Просто убедитесь, что вы имеете в виду потоковую передачу NATS или NATS.

Когда дело доходит до потокового NATS, publish call является запросом-ответом с сервера, поэтому он медленнее. Если вы предоставите AckHandlerвы сможете публиковать быстрее, так как вызов публикации теперь не блокируется. Сервер по-прежнему отправляет подтверждение публикации, но обработчик вызывается асинхронно. См. https://github.com/nats-io/java-nats-streaming для примера использования.

Другие вопросы по тегам