Los Websockets son una tecnología moderna y moderna envuelta en HTML5. Básicamente, puede abrir un websocket para permitir la comunicación persistente de 2 vías con un servidor web. El cliente (interfaz de usuario) puede enviar mensajes espontáneamente, y el servidor también puede enviar mensajes.
La tecnología existente (JavaScript) requiere que todo sea iniciado por el cliente - el servidor no puede enviar nada al cliente que el cliente no tiene solicitudes. Por lo tanto, los scripts deben actualizarse constantemente y volver a solicitar datos que podrían no haber cambiado. Websockets trabajan más en un " empuje base" y dejar que los nuevos datos vienen por el tubo cada vez.
Desafortunadamente, la mayoría de las implementaciones websocket (todo lo que puedo encontrar, de todos modos) requieren una aplicación de servidor específica para funcionar. Las personas ejecutarán Apache en los puertos 80 y 443 (http y https) y ejecutarán otro sistema (generalmente Node.js) en otro puerto (es decir, 8000 u 8080) para manejar las solicitudes de WebSocket.
Esto funciona, obviamente, pero tiene algunos inconvenientes.
Tengo un complemento que quiero construir que se beneficiaría enormemente del uso de websockets dentro de WordPress. Pero si un usuario necesita instalar un segundo servidor web (generalmente imposible para las personas con hosting compartido), entonces no funcionará como un complemento.
Entonces, para cualquiera de ustedes que tenga experiencia, ¿cómo haría que WordPress sea compatible con websockets? Habría que hacer WordPress manejar la comunicación en sí misma, o haz otra escritura mini-servidor en el plugin? Si ya ha hecho esto, ¿cómo lo logró sin romper WordPress?
Posibles recursos?
21/09/11 actualización
Con todo lo que se habla de cómo Apache (el servidor más comúnmente instalado para ejecutar WP en un host compartido) realmente no puede manejar los websockets de forma nativa, me pregunto acerca de una alternativa. Varios complementos (JetPack, por ejemplo) se comunican con un servicio externo o API para generar contenido.
Stats solicita contenido de Automattic. Akismet envía datos de un servidor externo a otro. Después de la fecha límite, envía contenido en el momento de la publicación. Algunas herramientas de SEO pasan cosas de un lado a otro a través de sistemas externos.
Entonces, como alternativa a alojar el código websocket dentro de un complemento de WordPress, ¿sería factible alojar un servicio websocket en una ubicación central y tener una interfaz de WordPress interactuando con eso?