Дизайн архитектуры веб-сайта, требующий реального- опрос времени с внешних серверов

У меня есть игра, работающая на N серверах ec2, каждый со своими собственными игроками внутри (допустим, это автономная игра внутри каждого сервера).

Как лучше всего разработать интерфейс для этой игры, позволяющий мне иметь информацию обо всех игроках на всех серверах почти в реальном времени?

Мой первоначальный подход был следующим:

  • Иметь общий хостинг php веб-сайта для опроса данных с каждого сервера (по 1 сокету для каждого сервера). Поскольку большинство общих решений на самом деле не предлагают постоянных сокетов, мне потребовалось бы создавать и обрабатывать соединение каждые 5 секунд или около того. Поскольку нет cronjob с такой степенью детализации, я бы в конечном итоге использовал запросы одного неудачливого клиента для выполнения этого обновления. Здесь так много неправильного, давайте рассмотрим это наихудший сценарий.

  • Лучшим сценарием (я полагаю) было бы создание небольшого экземпляра ec2 с некоторым веб-интерфейсом на python / ruby ​​/ php, с серверным приложением, предназначенным только для опроса и сохранения данных с серверов в базе данных веб-сайта. Хотя это должно работать нормально, я искал какое-то решение, где мне не нужно было бы тратить столько денег (даже микро-экземпляр стоит дорого для такого домашнего проекта).

Какое лучшее и дешевое решение для этого?

5
задан fabiopedrosa 21 October 2011 в 02:04
поделиться