websockets para estructura ejemplos ejemplo crear con php javascript jquery websocket comet

php - para - Complicaciones websocket



websocket php ejemplos (2)

OK ... tienes algunas preguntas, así que intentaré responderlas una por una.

1. Que usar

Podrías usar Socket.IO . Es una biblioteca para desarrollar aplicaciones web en tiempo real basadas en JavaScript. Consta de 2 partes: del lado del cliente (se ejecuta en el navegador del visitante) y del lado del servidor. El uso básico no requiere casi ningún conocimiento de fondo en Node.js. Aquí hay un tutorial de ejemplo para una aplicación de chat simple en el sitio web oficial de Socket.IO.

2. Alojamiento

La mayoría de los proveedores de alojamiento tienen un panel de control (cPanel) con la posibilidad de instalar / activar diferentes complementos de Apache y así sucesivamente. Primero debe verificar si Node.js no está disponible, si no, puede ponerse en contacto con el soporte y preguntarles si incluir esta opción sería una opción.

Si no tiene suerte con su proveedor de alojamiento actual, siempre puede cambiar de host rápidamente, ya que hay muchas buenas ofertas. Google definitivamente te ayudará aquí. Aquí hay una lista que contiene algunas de las (quizás) mejores opciones. Tenga en cuenta que aunque se pueden pagar algunas ofertas de alojamiento, hay muchas opciones de bajo costo para elegir.

3. Ancho de banda

Como le preocupa el código "hambriento de recursos", puede intentar alojar parte de su contenido en Amazon CloudFront . Es una red de distribución de contenido que se usa ampliamente y garantiza una conexión rápida y una rápida carga de recursos a medida que los archivos se cargan desde el servidor más cercano al cliente. La mejor parte es que solo pagas por lo que realmente usas, así que si no tienes mucho tráfico, ¡sería muy barato de ejecutar y aún confiable!

Espero que esto ayude ;)

Esto es complicado, y no necesariamente una pregunta. Apreciaría cualquier posible ayuda.

He leído que es posible tener websockets sin acceso al servidor, pero parece que no puedo encontrar ningún ejemplo que muestre cómo es. He llegado a esa conclusión (que creo que necesito esto) basada en las siguientes dos cosas:

  1. He estado luchando durante las últimas horas tratando de averiguar cómo hacer que incluso los websockets funcionen con el servidor WAMP que tengo en mi máquina, al que tengo acceso de root. Compositor instalado, pero no puede descubrir cómo instalar el archivo composer.phar para instalar el trinquete. Probé otras implementaciones de PHP websocket (preferiría que estuviera en PHP), pero aún así no puede hacer que funcionen.

  2. Mi webhost actual que estoy usando para probar cosas es un host gratuito, y no permite el acceso SSH. Por lo tanto, incluso si pudiera averiguar cómo obtener websockets con acceso raíz, es un punto discutible cuando se trata del host.

También encontré hosts de VPS gratuitos al buscar en Google (por supuesto, limité todo) pero tengo acceso completo a la raíz, pero preferiría mantener algo que permita más ancho de banda (mi host gratuito es actualmente ilimitado). Y he leído que puede (y debería) alojar el servidor websocket en un subdominio diferente al servidor HTTP, y que incluso puede ejecutarse en un dominio diferente por completo.

También podría ser más barato alojar mi propio sitio, por supuesto, no tengo una idea real de eso, pero en ese caso necesitaría averiguar cómo incluso hacer que los websockets funcionen en mi máquina.

Entonces, si alguien puede entender lo que estoy haciendo, varias preguntas aquí, ¿es posible usar websockets sin acceso de root, y si es así, cómo? ¿Cómo instalo correctamente los websockets de trinquete cuando no puedo averiguar el archivo composer.phar (tengo composer.json con el código de trinquete pero no estoy seguro de si está en el directorio correcto), y esta pregunta es si la primera pregunta no es? verdaderamente posible ¿Es posible entonces tener un servidor websocket en un VPS y tener el servidor HTTP en un dominio completamente diferente? En caso afirmativo, ¿hay alguna documentación al respecto?

Quiero decir, por supuesto, hay una opción de usar AJAX y forzar al navegador a volver a cargar un archivo JS cada período de tiempo que usaría jQuery ajax para actualizar una serie de divs, independientemente de si se ha cambiado algo, pero eso podría complicarse. , y ni siquiera estoy seguro de si eso es posible (no veo por qué no lo sería), pero de nuevo prefiero los websockets a eso, ya que escucho que tienen menos recursos que algún tipo de esto. El párrafo sería.


Un archivo PHP sin formato que se ejecuta bajo LAMP de vainilla (es decir, mod_php en Apache) no puede manejar conexiones WebSocket. No podría realizar la actualización del protocolo, y mucho menos realizar la comunicación en tiempo real, al menos a través de Apache. En teoría, podría tener una solicitud web de larga duración para un archivo PHP que ejecute un servidor TCP para atender las solicitudes de WebSocket, pero esto no es práctico y dudo que un host compartido realmente permita que PHP haga eso.

Puede haber algunos hosts compartidos que hacen posible el alojamiento WebSocket con PHP, pero no pueden ofrecer eso sin el acceso SSH / shell, o alguna otra forma de ejecutar PHP fuera del servidor web. Si solo te dan un directorio para cargar archivos PHP y los sirven con Apache, no tienes suerte.

En cuanto a sus problemas con Composer, no sé si es posible ejecutar composer.phar en un host compartido sin algún tipo de acceso de shell. Algunos hosts (por ejemplo, Heroku) tienen soporte específico para Composer.

Con respecto a la ejecución de un servidor WebSocket en un dominio completamente diferente, puede hacerlo. Simplemente apunte su JavaScript para conectarse a ese dominio, y asegúrese de que el servidor WebSocket proporcione los encabezados necesarios para compartir recursos entre orígenes.