java — заставляет клиента слушать сервер

Как я могу реализовать механизм, в котором я могу отправлять данные с сервера на клиент?

Я реализовал Java-приложение, в котором клиент прослушивает URL-адрес на сервере с определенной частотой (сторона сервера реализована с использованием PHP).
Каждый раз, когда клиент открывает соединение и проверяет возвращенный json с сервера на наличие обновлений.

Я думаю, что это не очень хорошее соглашение, потому что в этом методе клиент продолжает отправлять HTTP-запросы на сервер, поэтому у сервера слишком много подключений — и более 90% этих запросов не имеют ответа от сервера.

Моя цель — уменьшить количество запросов от клиента к серверу, поэтому я пытаюсь реализовать то же самое, но на ЗАДНИЙ ХОД заказ: каждый раз, когда на сервере происходит обновление (на сервере есть сообщение для клиента), оно отправляет его клиенту — клиент должен будет периодически прослушивать сообщение на сервере.

Как я могу реализовать такой механизм?

Это работает ?

Если нет, то как лучше всего решить мою проблему?

Это лучше, что я реализую серверную часть также в Java?

Я хочу вашей помощи, пожалуйста.

Благодарю.

0

Решение

Вы можете использовать веб-сокеты, которые предназначены для этого: https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API

Вы можете делать другие вещи, но это, вероятно, самый простой.

1

Другие решения

Как насчет использования шаблона издатель / подписчик, реализованного в библиотеке распределенных сообщений? ZeroMQ. Для php и java доступны привязки. Я недавно использовал zeromq в проекте и был очень удивлен его простотой использования и производительностью.

0

По вопросам рекламы [email protected]