Задать вопрос
grigor007
@grigor007
http://goldapp.ru

PHP и высокая нагрузка. Каков предел?

Здравствуйте!

Подскажите, есть ли смысл использовать php для высоконагруженных проектов, например, для онлайн игры с частым обновлением состояний игрового поля, например, как тут: vk.com/app3144697 (игроки сидят за столом и крутят бутылочку. )

И как бы вы описали задачи, под которые php для высокой нагрузки подошел был и не подошел?

Спасибо. Извиняюсь за дилетантское описание вопроса))
  • Вопрос задан
  • 3785 просмотров
Подписаться 5 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 4
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
для подобного удобнее конечно взять node.js + socket.io, но и на php (с reactphp) можно. В плане нагрузок у вас больше будет уходить времени на доставку данных, нежели на их обработку, так что тут скорее эффективный сервер нужен. в node.js он из коробки довольно эффективен, а в reactphp чуть медленнее (хотя если поставить еще libevent то норм).
Ответ написан
Методика определения нагрузки:
- Определяем количество пользователей онлайн.
- Зная количество пользователей онлайн, определяем сколько будет запросов в секунду.
- С помощью xdebug замеряем среднее время выполнения скриптов.
- Умножаем среднее время выполнения скриптов на количество запросов в секунду.
- Если получившееся время в пределах 2 секунд, то всё нормально. Иначе либо не php, либо оптимизация.

По поводу выбора php:
- PHP весьма неплохо подходит для высоконагруженных проектов, если минимизировать работу с внешними данными (база и memcached).
Ответ написан
Комментировать
php + nginx-push-stream-module вполне подойдут для вашей задачи.
У php есть проблемы с горизонтальным маштабированием, но и они решаются за счет оптимизации, подключения кешей и разных акселераторов.
Ответ написан
PHP плох там, где нужно поддерживать постоянное соединение, хотя и тут хватает инструментов, которые позволяют использовать PHP и в таком режиме.

В вашем примере, насколько я понял из беглого просмотра, постоянное соединение не поддерживается, да и особо не нужно для такого функционала.

PHP - это самое проверенное и актуальное решения для большой нагрузки на данный момент. Большинство крупных сайтов в интернете крутится именно на нем. Так что непонятен ваш вопрос про предел :)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы