I saw there are a couple of similar threads but i could not find my answer.
I\'m making and android app, an i want to use node as server for real time communication
I'm the author of node-websocket-server (nws), and I'm pretty sure the reason for node-websocket-server working and socket.io not, is due to the implementation of each. NWS will auto negotiate the right draft to use, and it also has a hopefully 90-100% compliance with the drafts of 76 and 75.
As for socket.io, I can't comment too much, but the last I looked, it's websocket implementation was rather poorly implemented.
I'm currently working on a project at the moment called node-websocket-protocol, which will be able to be used by socket.io, faye, etc as to provide them with a really reliable and compliant websocket implementation. This will also replace the current implementation in node-websocket-server in version 2.0.0.
As a side note, if you'd rather not host your own websocket server, you could look at using Pusher.com, who're actually my employers.
[Update] As for whether websockets are the most appropriate technology choice for your application, is a matter of what type of data and interaction your application needs. On a mobile device, it may be best to use something like urbanairship or notifio if you're just sending push notifications.
Regards, Micheil Smith