В чем разница между планированием вызова Get Api каждую секунду и API-интерфейс Doing Subscriber? - PullRequest
0 голосов
/ 13 февраля 2019

Я пишу Java-приложение, в котором, когда данные изменяются, изображение должно измениться,

Мои коллеги просят меня создать планировщик, в котором вы должны вызывать get api каждую 1 секунду

Мое предложение состоит в том, чтобы использовать Pub-Sub, чтобы при возникновении события изменялись только данные

Является ли подписчик и планировщик одним и тем же?

Нет кода

Ответы [ 2 ]

0 голосов
/ 13 февраля 2019

Публикация / подписка, теоретически, является более приятным вариантом.

Различия:

  • Опрос - это разновидность ожидания ожидания, когда несколько клиентов вызывают избыточный сетевой трафик. Клиент активен.
  • Для публикации / подписки требуется активный сервер, который отправляет push-уведомления всем подписчикам.Между тем есть достаточная поддержка в HTML5 / JavaScript и в Java. Сервер активен.

К сожалению, публиковать / подписываться, вероятно, будет немного сложнее для реализации.Лучше всего было бы сделать доказательство концепции в отдельном приложении.Могут появиться такие вещи, как асинхронный Ajax.

Кроме того, некоторые библиотеки публикации / подписки могут все еще использовать скрытый опрос на стороне клиента вместо push-уведомлений.

Таким образом, рекомендации коллег могут основыватьсяна более простой, беспроблемной реализации.

В зависимости от предоставленной вам свободы действий и в интересах архитектурных исследований: прототип с нагрузочным тестом для обеих реализаций подойдет. Надежда никогда не умирает.

0 голосов
/ 13 февраля 2019

Это не то же самое:

  • Планировщик - это когда вы явно выбираете, когда сделать запрос.Вы можете делать это каждую секунду, минуту или что угодно.Каждый раз, когда вы создаете новый запрос.
  • Pub-Sub - это когда вы создаете постоянное соединение с источником событий, и когда событие публикуется, вы его используете.У вас нет нескольких запросов, это скорее сокетное соединение.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...