Apache с поддержкой Comet
Я хотел бы создать многопользовательское приложение для веб-игр, в котором оно поддерживает чат. Я предполагаю, что приложению придется обрабатывать сотни одновременных соединений.
Я планирую разместить свое приложение на общем веб-хостинге, который имеет эти ограничения (скорее всего, аналогичноPHP + Comet (long-polling) масштабирование / хосты):
Кажется, я не могу изменить веб-сервер. Скорее всего, он использует Apache.Поддерживает MySQL 5, PHP 5.3.x, Perl, Python, Ruby on Rails, CGI(Точнее, я буду использовать общий веб-хостинг HawkHost.)
И вот мой результат исследования, а затем мои вопросы:
Некоторые ресурсы (например,Python Comet Server) говорят, что PHP не подходит для обработки одновременных соединений, в то время как Python - лучший выбор. Это правда?Я пробовал метод длинного опроса в PHP (хотя я не знаю, правильно ли он реализован или нет, например,Проблема кометы с оставленными открытыми связями) используя «бесконечный цикл до тех пор, пока данные не изменятся». метод. Этотпочти работает, Оставшаяся проблема заключается в том, что серверный процесс никогда не умирает, когда браузер закрыт (сервер не знает, что соединение было разорвано, и данные никогда не изменяются). Есть ли способ, которым PHP может определить, был ли браузер завершен, чтобы он останавливал цикл?Я искал повсюду, чтобы найти ответы, но до сих пор не могу ничего сделать. Эту тему также много раз задавали в StackOverflow, извините, если я могу повторить>. <.
В настоящее время я могу писать с использованием PHP, MySQL и JQuery для JS. Я все еще плохо знаком с термином Комета и Сервер Push. При необходимости я также хочу выучить новый язык сценариев, такой как Python.
Я ценю любые идеи о том, какой язык сценариев, инфраструктуру и методы использовать для запуска моего проекта.