Server configuration and fallback capabilities?

Feb 21, 2012 at 9:27 PM
From what I've read on some posts, the server has been configured to allow 500K connections on a quad-core machine.  That particular post listed an issue with a CPU spike on init.  Has that been corrected in the currently available release?
What is the recommended topology for a production environment?  Should the server be deployed on a separate box, or can you safely run this on your IIS server as well?
Does SuperWebSocket (and WebSocket4Net) support fallback technologies such as Comet/long-polling, or FlashSockets if WebSockets is not available on the browser?
Thanks
Coordinator
Feb 22, 2012 at 12:46 AM
Can you tell me where I can find the post?
I don't know this issue.
If the issue you mentioned is the post http://superwebsocket.codeplex.com/discussions/287064, this issue had been fixed.
You'd better deploy it as a Windows Service. Because if you host it in IIS, you don't know when the IIS will recycle the application pool.
Fallback technologies are supported by SuperWebSocket+WebSocket4Net. WebSocket protocol was designed to support duplex communication in one channel.
Yes, you can use Flash as websocket proxy, if web browser cannot support websocket.
There is a open source porject support it:

From: [email removed]
Sent: Wednesday, February 22, 2012 6:27 AM
Subject: Server configuration and fallback capabilities? [SuperWebSocket:338277]

From: elhaix

From what I've read on some posts, the server has been configured to allow 500K connections on a quad-core machine. That particular post listed an issue with a CPU spike on init. Has that been corrected in the currently available release?
What is the recommended topology for a production environment? Should the server be deployed on a separate box, or can you safely run this on your IIS server as well?
Does SuperWebSocket (and WebSocket4Net) support fallback technologies such as Comet/long-polling, or FlashSockets if WebSockets is not available on the browser?
Thanks
Feb 22, 2012 at 5:49 AM

Hey that's good to hear, and yes, that was the post I was referencing.

Can you describe the fallback mechanism/path or point me to where it's documented?  For example if WebSockets are not available what other protocols does it try and in what order?

Let's say we get to a threshold where we cannot add more connections.  How would we add more services/servers for scalability?

Also, I'm really happy to see the activity and prompt responses on this project.

Thanks.

Coordinator
Feb 22, 2012 at 5:56 AM

Actually, duplex communication is supported by raw TCP.

WebSocket protocol is one protocol which supports duplex in application layer, you'd better learn more details from websocket.

SuperWebSocket is a .NET websocket server, so it fully supports fallback.

 

 If WebSockets are not available in browser directly, you can use Flash/Silverlight to connect websocket server, in this case communication between client and server also over websocket.

 

For now, scalability support should be done by yourself.

Feb 22, 2012 at 1:43 PM

I get that you say fall back technologies are "supported".  Can you clarify that please?  Are you saying that this is already baked into the server, or it is up to us to detect whether or not to WebSockets are available, and if not, write our own implementation for other data transport methods?

Coordinator
Feb 22, 2012 at 2:02 PM

http://en.wikipedia.org/wiki/WebSocket

http://tools.ietf.org/html/rfc6455

Client API:

http://dev.w3.org/html5/websockets/

Flash WebSocket bridge which is used for non-websocket supported browser

https://github.com/gimite/web-socket-js

 

Coordinator
Feb 22, 2012 at 2:08 PM

SuperWebSocket is a WebSocket Server which runs in server side.

WebSocket allows web browser keep a duplex connection with websocket server, but not all browsers support it. But in the non-websocket browser, you can use Flash/Silverlight as proxy to communicate with server over websocket. The websocket support of browser should be done by yourself, because it is client side works. SuperWebSocket is a websocket server, it needn't take care about client issues.