2011-02-03 22 views
27

Hoy he encontrado Kaazing's WebSocket API para HTML5.Websockets con ASP.NET MVC/MVVM

Parece fantástico, pero como ahora solo estoy investigando las posibilidades de WebSocket para la actualización financiera en tiempo real, me gustaría escuchar algunas recomendaciones y dificultades para evitar al planificar esta arquitectura.

Estoy mirando ASP.Net MVC, y posiblemente algo de WPF/Silverlight MVVM.

¿Hay otras API de WebSocket que son mejores (y por qué), y algunos buenos ejemplos?

Además, ¿qué tipo de tráfico puede manejar WebSockets? Quiero decir, si tenemos más de un millón de usuarios en un sistema actualizando en tiempo real, ¿cómo cambian los requisitos de hardware porque la arquitectura del software implementa WebSockets?

Respuesta

1

https://github.com/Olivine-Labs/Alchemy-Websockets

Aquí hay un servidor websocket de código abierto y una biblioteca cliente. C#/Javascript. Incluye respaldo a los sockets de flash para navegadores que aún no tienen sockets de web. Probado en la mayoría de los navegadores web, incluidos los móviles, funciona en todas partes.

¿Realtime financials? No sé cuántas conexiones planea manejar, pero esta es también la solución más escalable disponible en este momento.

1

Aunque el número de navegadores es bastante limitado para websockets, los navegadores móviles tienen soporte para eso. Pero estaría considerando el uso de más opciones de navegador cruzado como PokeIn biblioteca inversa ajax

9

Una respuesta tardía. Aquí hay un servidor WebSocket (framework) que está basado en .NET y tiene soporte para modelbinding/controller y validaciones, etc. de una manera que recuerda a MVC. Es muy fácil comenzar a usarlo. Basta con crear un nuevo proyecto MVC3 y tipo:

Instalar Paquete XSockets

Uso de la consola Administrador de paquetes en Visual Studio

Más información sobre http://xsockets.net

Y sí, es compatible con RFC6455 y Hibi00 y tiene una alternativa para los navegadores "antiguos".

4

Pensé que volvería a esto, ahora que tengo una solución lista para producción. Eché un vistazo a algunos proveedores que, básicamente, cobran mucho dinero por algo que esencialmente puedes construir tú mismo. Todos ellos tienen buenos productos, y si su tiempo de comercialización es crítico, esas opciones prefabricadas pueden ser las mejores a corto plazo.

Después de hurgar con Node.JS con Socket.IO, cambié mi atención a SignalR - una biblioteca de señalización asincrónica para.NET para ayudar a crear aplicaciones web interactivas multiusuario en tiempo real y utilizar la implementación del concentrador.

Gestiona todo el trabajo pesado y la construcción de la conexión con sólo unas pocas líneas de JavaScript, y selecciona automáticamente el protocolo de transporte apropiado para la conexión.

Para un entorno de carga equilibrada, se requiere la implementación de un servidor de almacenamiento en caché como Redis.