[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Нагрузка php
caHek2x
Добрый день, я пишу приложение на Android типа чат/форум
на сервере у меня скрипты(php + mysql все пишу сам без фраймверков и тд) типа:
"Получить список тем"
"получить список онлайн"
"получить список сообщений темы"
"добавить тему"
и тд ...
Принимают post параметры, возвращают xml
Все данные хранятся в mySQL
Над скриптами сидел долго и мучительно, оптимизировал насколько хватило знаний ... работает шустро ... хотя шустро это слово образное... поэтому приведу цифры... засекал через microtime(true):
загрузка списка тем (на странице 30 тем) занимает 0.0654
загрузка сообщений темы (на страницу 50 сообщений) 0.1383
каждые секунд 5-10 устройство пользователя опрашивает(делает запрос) сервер на новые сообщения, ну и если есть новые, то запрашивает список сообщений ...
скрипт "проверки на новые сообщения", а точнее скрипт возвращающий количество сообщений этой темы занимает по времени 0.00846
Сейчас в день 10 - 20 человек, но пока рекламой не занимаюсь, просто дорабатываю все ...
Трафик в месяц выходит 6-7 Gb, запросов к скриптам в день 20-30 тысяч(большая часть к скрипту проверки на новые сообщения) ... информация чисто текстовая изображений и тд нет ...

Так вот это было предисловие .. теперь суть вопроса ... насколько надо мощный сервер для например онлайна 1 000 ...
Насколько велика необходимость переписывать это под Си или другие языки ... ?
Как мне объяснили php не способен выдерживать большие нагрузки ... особенно когда пойдет онлайн за тысячи ... насколько это верная информация с учетом того что все будет оптимизировано на 5 .... ? и вообще до какого предела нагрузки хватит php ? или тут все зависит чисто от мощности сервера ?
FatCat
Цитата (caHek2x @ 10.05.2014 - 11:45)
насколько надо мощный сервер для например онлайна 1 000

1000 одновременных или 1000 в сутки?

Мне проще считать хитами в минуту. На нормальном шаред-хостинге сможет держать 1-2 к хитов в минуту. То есть, если чат обновляется каждые 10 секунд, будет держать до 200-300 одновременных.

_____________
Бесплатному сыру в дырки не заглядывают...
caHek2x
все про что писал выше (Сейчас в день 10 - 20 человек) это имел ввиду одновременных ... и вопрос был про одновременных ... извиняюсь что не уточнил ...
и очень интересует последний вопрос:
"и вообще до какого предела нагрузки хватит php ? или тут все зависит чисто от мощности сервера ? "
Rand
1000 / 5 = 200 запросов в секунду необходимо будет обрабатывать. Если один процесс будет отъедать 10мб, то при весьма грубом подсчете необходимо будет более 2Гб ОЗУ, доступных в ед. времени (если бы запрос выполнялся 1 сек, условно). И не факт, что PHP здесь будет самым узким местом, т.к. для того, чтобы веб-сервер принял запрос, подождал пока php отдаст ответ и отправил его клиенту необходимо гораздо больше времени, чем 0.06сек. Могу лишь посоветовать почитать про серверные технологии, купить хостинг в облаке и посмотреть в сторону nginx.
Цитата
"и вообще до какого предела нагрузки хватит php ? или тут все зависит чисто от мощности сервера ? "

Каждый запрос - это отдельный процесс php, сколько одновременных процессов может быть запущенно, зависит только от мощности сервера.
caHek2x
Цитата
посмотреть в сторону nginx

мне друг обещал выделить машину ... вот как раз только что читал про настройку nginx на линуксе ... вот как раз по дороге еще вопрос ... что лучше CentOS или Debian ? или еще варианты ...
Rand
caHek2x
Не сильно большая разница, я использую CentOS. Гораздо большая разница между 64bit и 32bit. Если ОЗУ не много, лучше выбрать 32-х битную систему, т.к. 64-битное ПО расходует больше памяти.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.