Пользовательский опросник Spring, использующий динамическое максимальное сообщение для каждого значения опроса - PullRequest
0 голосов
/ 25 сентября 2018

В настоящее время я разрабатываю платформу SMPP, которая должна быть способна доставлять определенное количество смс за секунду.

Это легко реализовать с помощью amqp с пружинной интеграцией

НО

Мне нужно запустить проект как сервис active-active на 2 узлах, и каждый узел имеет соединение с 2 SMSC.Для этой конфигурации у меня есть разрешенный трафик 100 мсг / с, и в идеале мне нужно распределить свой трафик по всем доступным соединениям.

Простой опросчик может быть легко настроен на 25 мсг / с для каждого узла(4 * 25 = 100), но если одно из моих соединений не работает, я хочу распространить потерянную емкость на другие узлы / соединения в прямом эфире.

Для этого я хотел бы создать динамический поллер, который получитинформация о состоянии соединения в redis и просто адаптация количества сообщений, разрешенных для опроса во время выполнения (например, 0 для разорванного соединения и 33% для 3 других, или 50%, если доступно только 2 соединения на 4).

Возможно ли реализовать это поведение с помощью пользовательских PollerMetadata или мне нужно искать какое-то другое решение?

Спасибо заранее за помощь.

1 Ответ

0 голосов
/ 25 сентября 2018

Опрос довольно тяжелый и в наши дни может считаться «старомодным».

Я настоятельно рекомендую попробовать: Sse (событие отправки с сервера) или веб-сокет.

Многие технологии такжеПоддержите оба выше решения (пружина ...)

Вы можете найти более подробно в этой статье:

https://codeburst.io/polling-vs-sse-vs-websocket-how-to-choose-the-right-one-1859e4e13bd9

...