2009-10-07 9 views
77

При использовании WebSockets мне нужно будет написать код сервера? Другими словами, будет ли JavaScript в моем клиентском приложении подключаться к специализированному серверу, или мой существующий сервер Apache будет работать для этого?Нужен ли мне сервер для использования WebSockets HTML5?

ответ

20

Сервер должен поддерживать сетевые сокеты. После первого рукопожатия в HTTP сервер и клиент открывают соединение сокета. Сервер должен быть способен понять и принять это рукопожатие.

В моем последнем проекте мы успешно запускаем соединения веб-сокетов, используя последнюю версию Jetty.

27/02/2014: Теперь я также внедряю websockets под .net с XSockets.net и работает как шарм, вам даже не нужен веб-сервер (собственный хостинг). Реализация ASP.NET для WebSocket также неплоха.

+0

cwebsocket on github - хороший небольшой сервер. его легко расширить и на http-сервере. – minghua

5

Конечно, вам нужен сервер WebSocket. Но есть много бесплатных серверов websocket на разных языках, таких как jWebSocket в Java и SuperWebSocket в .NET, вы можете использовать их напрямую.

+2

Почему вы говорите «конечно», что вам нужен сервер? Он может работать одноранговым, нет? –

+0

@JonathanStark no. Websocket - только клиент/сервер. они не равны. Для однорангового решения проверьте спецификацию webrtc. –

+0

Мой плохой. Думал о WebRTC. Извини за это. –

7

Да, вам нужно написать код сервера.

Я рекомендую другой сервер веб-сокетов на основе php: ratchet. И это link является бенчмаркингом серверов webSocket между храповым механизмом и sockJS.

Полный список клиента & стороне сервера кодов и браузеры поддерживают, пожалуйста, проверьте этот link

1

Сервер Perl Mojolicious поддерживает веб-сокетов, и реализации могут быть длиной всего лишь несколько строк.

В Node.js есть несколько библиотек WebSocket, но детали последних, самых больших, наиболее подходящих из последних характеристик различаются, поэтому тщательно выбирайте.

Apache Active MQ также стоит посмотреть вместе с протоколом топа, который он реализует.

5

Есть некоторые плагины в настоящее время разрабатываются на Google Code для Apache ...

По WebSockets определению, как обычные сокетов клиент-сервер да так, вам нужен сервер. Однако есть альтернатива ожиданию плагинов Apache.

Я использую размещенный сервер http://www.achex.ca. Это бесплатно, и у вас есть учебники в javascript о том, как использовать сервер. Хороший старт для разработки веб-сайтов.

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

Короткий ответ: Да, Вам нужен специализированный сервер, Apache не приходит с WebSockets.
OR
Альтернатива, выезд www.achex.ca.

2

В такой ситуации роль сервера приходит тогда, когда: (. 2-полосная комм)

В HTML 5 WebSocket как Fone не Walky-Talky. HTTP-протокол обновлен до протокола websocket.(wss:// from ws://) SERVER должен иметь возможность открывать дуплексный канал и, следовательно, AGREE с дуплексной связью.

Пожалуйста, перейдите по этой ссылке: http://www.html5rocks.com/en/tutorials/websockets/basics/

При использовании PHP, пожалуйста, смотрите на Ratchet.

Спасибо.