Wie läuft xsocket.net (.NET WebSocket Server) unter Windows 2008?

8

Ich vergleiche WebSocket Server

  1. xsockets.net
  2. SuperWebSocket
  3. Fleck
  4. SignalR

SignalR ist nur auf Server 2012 verfügbar, aber auf meinen Servern wird Windows 2008 ausgeführt.

SuperWebSocket & amp; Fleck , sie unterstützen nur Flash-Proxy-Fallback.

xsockets.net , dieser bietet eine Long-Pooling-Fallback-Unterstützung im älteren Webbrowser. Aber es sagt, das Fallback ist nur für MVC3 / 4-Projekt verfügbar. Kann es einen Port in der MVC3 / 4-Anwendung öffnen, um Verbindungen für Clients zu akzeptieren, die Websocket unterstützen? Es scheint mir unmöglich auf Windows 2008.

Ich habe die Frage, nämlich: Wie läuft XSockets.NET in Windows 2008?

Wie Sie wissen, wird die WebSocket-Funktion nicht in http.sys bis IIS8.0 hinzugefügt. In IIS7.5 läuft SignalR immer im Long-Pooling-Modus für alle Clients.

Ist das für XSockets.NET dasselbe? Weil es heißt, das Long-Pooling-Fallback wird nur im MVC3 / 4-Projekt unterstützt. Wenn ich die Fallback-Unterstützung nutzen möchte, muss ich XSoctors.NET in MVC3 / 4 verwenden, das schließlich von IIS gehostet wird. Und IIS7.5 hat nicht die Funktion von Websocket, vor der ich Angst habe

Weiß jemand, wie es in IIS7.5 funktioniert, das die MVC-Anwendung hostet? Behandeln Sie alle Clients über Long-Pooling?

    
Mr.Wang from Next Door 30.07.2013, 06:07
quelle

1 Antwort

10

Bearbeiten:

Kompatibilität

XSockets werden auf jedem Rechner mit .NET 4.0 (oder neuer) oder Mono websocket-kompatibel sein. Dies ist unabhängig vom Betriebssystem ... Sie können sogar die kompletten XSockets auf einem Raspberry PI ausführen, wenn Sie möchten. Die einzige Möglichkeit, XSockets das Fallback zu verwenden, besteht darin, dass die Clientverbindung keine Websockets (IE9, IE8 usw.) unterstützt.

SignalR hat die WebSocket-Unterstützung für .NET 4.5 und den integrierten WebSocket-Namespace (in 4.5) erstellt, während XSockets das WebSocket-Protokoll in .NET 4.0 (unter anderem) implementiert hat. SignalR und XSockets haben wirklich nichts in Kommentar abgesehen davon, dass sie beide auf .NET Framework gebaut sind, danach sieht das Aussehen sehr anders aus ... Aber das ist außerhalb des Geltungsbereichs.

Umgebung

Da XSockets das WebSocket-Protokoll selbst implementiert hat, bedeutet dies, dass XSockets nicht von einem Webserver, IIS, Apache usw. abhängig ist. Es kann als eigenständiger Windows-Dienst oder auf Azure ausgeführt werden, wenn Sie möchten. Sie können XSockets jedoch auch in Ihrem Web starten, und zwar so, wie es bei der Installation unseres nuget-Pakets eingerichtet ist.

Fallback

Wenn Sie XSockets in einer MVC3 / MVC4-Lösung installieren, registriert die Installation automatisch einen zusätzlichen Controller. Dieser Controller wird unsere externe API (Sockets) verwenden, um mit XSockets zu kommunizieren, und die JavaScript-API wird AJAX (longpolling) gegen diesen Controller ausführen, wenn der Client keine Unterstützung für Websockets bietet. Als Entwickler müssen Sie nichts anderes tun, als eine zusätzliche JavaScript-Datei hinzuzufügen, wenn Sie den Fallback verwenden möchten.

Nun können Sie die Fallback-Funktion für WebForms (und Azure) ebenfalls ausführen, aber da dies nicht möglich ist, lassen wir das für später offen, wenn Sie Fragen dazu haben.

Bottom Line Zum Schluss ...

  • Mach dir keine Sorgen darüber, dass XSockets ein spezielles Betriebssystem zum Ausführen benötigen in jeder Windows / Unix / Linux-Umgebung, solange .NET 4.0 oder Mono ist installiert.
  • XSockets werden in IIS, in Azure, als Windows-Dienst oder nur als Konsolenanwendung ausgeführt. Sie können den Server sogar auf Raspberry PI ausführen alles andere wirklich (ein Telefon oder was auch immer) so lange wie die Anforderungen für .NET / Mono ist voll ausgefüllt.
  • XSockets können sowohl in .NET- als auch in Mono-Umgebungen entwickelt werden, sodass Sie Plugins sowohl von einem MAC mit Xamarin als auch von Windows mit Visual Studio entwickeln können.
  • Das Fallback wird automatisch eingerichtet, wenn Sie es für die Entwicklung in MVC3 / MVC4 installieren, aber Sie können auch Fallback auf Azure und WebForms.
  • SignalR lässt die Server-Umgebung entscheiden, ob die Clients WebSockets verwenden können oder nicht, XSockets haben immer WebSockets und Fallback zu longpolling nur wenn der Client nicht unterstützt Websockets.
Uffe 30.07.2013, 15:57
quelle

Tags und Links