81

When using WebSockets, will I need to write server code? In other words, will the JavaScript in my client application need to connect to a specialized server, or will my existing Apache server work to support this?

Shog9
  • 156,901
  • 35
  • 231
  • 235
cometta
  • 35,071
  • 77
  • 215
  • 324

6 Answers6

21

The server has to support web sockets. After a first handshake in HTTP, the server and the client open a socket connection. The server must be able to understand and accept this handshake.

In my last project we run quite successfully web socket connections using the last Jetty version.

27/02/2014: Now I'm also implementing websockets under .net with XSockets.net and works like a charm, you don't even need a web server (self hosting). The WebSocket implementation of ASP.NET works also quite good.

Rafa
  • 2,328
  • 3
  • 27
  • 44
  • cwebsocket on github is a nice small server. it's easy to be expanded it into also a http server. – minghua Mar 21 '14 at 20:50
6

Yes,you need to write server code.

I recommend another web socket server based on php: ratchet. And this link is benchmarking webSocket servers between ratchet and sockJS.

Complete list of client & server side codes and browsers support please check this link

Community
  • 1
  • 1
ShahRokh
  • 1,005
  • 14
  • 31
5

There are some plugins currently being developed on google code for Apache...

By definition websockets like normal sockets are client-server so yes, you need a server. However there is an alternative to waiting for Apache plugins.

I am using a hosted server http://www.achex.ca. Its free and you have tutorials in javascript on how to use the server. A good start for websockets development.

The server is basically a message router and you can connect to it and use it as a meeting point for all your websocket clients.

Short Answer: Yes, You need a specialized server, Apache does not come with websockets.
OR
The alternative, check out www.achex.ca.

AlexC_JEng
  • 113
  • 3
  • 6
5

Of course you need a WebSocket server. But there are many free websocket server in different language, like jWebSocket in Java and SuperWebSocket in .NET, you can use them directly.

Kerry Jiang
  • 1,168
  • 13
  • 10
3

In such a situation the role of server comes when :

In HTML 5,WebSocket like a fone(2-way comm.) not walky-talky. http protocol upgraded to websocket protocol.(wss:// from ws://) SERVER should be able to open duplex channel and hence AGREE with duplex communication.

Please go through this link : http://www.html5rocks.com/en/tutorials/websockets/basics/

If using php please look at RATCHET.

Thanks.

Sid
  • 4,905
  • 1
  • 17
  • 17
1

The Perl Mojolicious server supports web sockets, and implementations can be only a few lines long.

Node.js has several WebSocket libraries but details of the latest, greatest, most supportive of the latest spec vary, so choose carefully.

Apache Active MQ is also worth a look, along with the stomp protocol it implements.

Lee Goddard
  • 10,680
  • 4
  • 46
  • 63