2012-06-26 4 views
1

У меня возник вопрос о связи между клиентом и сервером.Связь клиент-сервер-клиент

Я хотел бы создать приложение GWT, что может сделать следующее:

клиенту срабатывает событие на сервер и сервер в свою очередь, огонь событие в клиенте B. Здесь клиент B должен быть в состоянии слушать событие все время.

Я хотел отправить какое-то событие с несколькими данными в реальном времени подключенному клиенту B. это возможно? и если да, то как я могу это сделать?

Благодаря

ответ

4

Здесь клиент B должен уметь слушать событие все время.

Чтобы клиент мог ожидать данных, вы можете использовать Comet [1] (долговечные HTTP-запросы) или WebSockets [2], если его поддерживает JS runtime.

[1]: http://code.google.com/p/gwt-comet/

[2]: http://code.google.com/p/gwt-ws/

+0

Большое спасибо, я думаю, это то, что это могло мне помочь. У меня есть еще один вопрос: как комета работает на сервере? должен ли сервлет постоянно работать на веб-сервере? –

+0

Да, поскольку ссылка хранится между клиентом и сервером – Arcadien

+0

спасибо Aurelien, вы мне очень помогли. –

1

here is one example конечно его возможной для связи между клиентом и сервером, вы должны использовать RPC (удаленный вызов процедуры). вы можете отправлять и получать данные в виде сериализованных объектов через rpc

+0

спасибо за ответ. Проблема qhat у меня есть связь между двумя клиентами по серверу. это означает, что клиент A запускает событие или сообщение, которое должно быть получено от клиента B по серверу в режиме реального времени. Обычный RPC позволяет мне получить серийный объект с сервера, но мне нужно получать сообщения с сервера без отправки запроса. –

1

Просто сохраните результат запроса клиента (А в) в базе данных. и написать код на стороне клиента, чтобы запросить содержимое из db, обработать его на сервере и вернуть результат клиенту (в вашем случае, клиент B)

+0

спасибо за ответ, клиент B должен получать изменения в режиме реального времени. Это означает без запроса. –

Смежные вопросы