Tema: socket
Ver Mensaje Individual
  #4 (permalink)  
Antiguo 07/08/2014, 12:21
Avatar de alex171294
alex171294
 
Fecha de Ingreso: agosto-2014
Mensajes: 10
Antigüedad: 10 años, 3 meses
Puntos: 2
Respuesta: socket

los sockets son como enchufes entre las computadoras, hay dos formas de trabajar con socket, un socket se puede comportar como servidor (o lo más parecido en la realidad sería como enchufe hembra) esperando que alguien se conecte al él, y el socket se puede comportar como cliente, haciendo de enchufe macho, conectandose o enchufandose al lugar donde se indique.

Cuando uno habla de un socket que espera conexiones nuevas a esa pc donde se ejecuta se habla de un socket que se encuentra a la escucha (listen), cuando uno habla de un socket que se conecta a una computadora uno habla de un socket que realiza la conexion.

Entonces tu con los sockets tienes una forma de manejarlos para que esperen a que se conecten a ellos, y otra forma en la que el socket se conecta a otro socket.

Debe haber una pc que escuche esperando conexiones y al menos una pc que se le conecte para establecer una conexion entre ambas pc.

Por otra parte, lo que a ti te ocurre del error 500 es porque probablemente usas php_cgi (el php que es ejecutado por apache, en modo servidor web) y el mismo tiene un limite de tiempo de ejecucion, que depende de la configuración, pasado ese tiempo se finaliza la ejecución del script php de forma forsosa.

Para crear un servidor con sockets en php, debes ejecutar dicho codigo usando php_cli (command line interface o en modo consola).

Por otra parte te dejo un link a un proyecto en el que estoy trabajando para manipular sockets con eventos y objetos que quizá llegue a ser más simple si entiendes lo básico de sockets y miras la wiki del proyecto (ahí hay algunos ejemplos también)

https://github.com/alexander171294/PHPSocketMaster

saludos!