2011-04-12 16 views
7

Quiero hacer un juego multijugador. Por lo tanto, debería hacer un servidor de socket y bucle para siempre para aceptar la solicitud del cliente entrante. Como no quiero que un navegador explore un sitio web de PHP para hacer eso, solo quiero que el servidor ejecute automáticamente el socket del servidor una vez. ¿Puedo usar Ruby on Rails para hacer eso?¿Puede Ruby on Rails ser un servidor de juegos?

+0

Solo quiero hacer un juego de iPhone en línea. Entonces, el cliente puede enviar un mensaje al servidor, y luego el servidor reenvía el mensaje a otro cliente. ¿Pueden los raíles hacer eso? – Samuel

Respuesta

1

Depende de lo que quiere que sea el servidor. Si se trata de un juego basado en turnos o no en tiempo real (no en RTS/FPS, etc.), Rails debería hacerlo bien. Querrá utilizarlo como un marco para un servicio web en lugar de un sitio web en sí.

También podría ser útil como servidor experimental mientras desarrolla el juego en sí, ya que el código Rails tiende a ser más fácil de modificar en iteraciones rápidas.

5

Los rieles se pueden hacer para hacerlo. pero probablemente no sea la mejor herramienta para ese trabajo en particular.

HTTP es un protocolo de solicitud/respuesta y el envío de datos fuera de banda es complicado, necesita usar cometd o los nuevos websockets, y tiene todos los clientes escuchando o sondeando para obtener datos.

Creo que usar Erlang es una herramienta mejor, o si está más cómodo con Ruby use un servidor Ruby (no Rails) usando algo como EventMachine.

+0

¿qué hay de usar Golang? Erlang vs Golang, ¿cuál se adapta mejor? – AbhimanyuAryan