Что касается проверки того, сколько памяти использует ваш скрипт, вы можете периодически вызывать memory_get_usage(true)
в точках вашего кода, чтобы определить, какие части вашего скрипта используют память.memory_get_peak_usage(true)
, очевидно, возвращает максимальный объем памяти, который был использован.
Вы говорите, что ваше приложение некоторое время работает нормально.Это единственный скрипт, который выполняется все это время, или много разных запросов / посетителей страницы?Обычно для каждого скрипта есть max_execution_time (часто по умолчанию 30 секунд).Это может быть изменено в коде для каждого сценария путем вызова set_time_limit()
.
Существует также свойственный memory_limit, как установлено в php.ini.Это может быть 64M или ниже на общем хосте.
"... как только я буду открывать все больше и больше запросов ..." - существует ограничение на количество одновременных (ajax) запросовклиент может сделать с сервера.Браузеры могут быть установлены на 8 или даже меньше (это можно изменить в Firefox через about:config
).Это сделано для того, чтобы один клиент не заполнил сервер запросами.Сервер может быть настроен на запрет клиентов, которые открывают слишком много запросов!
Общий хост может иметь ограничения.Однако, если на хосте не размещается слишком много сайтов, они могут быть достаточно мощными серверами, предоставляя вам доступ к большой мощности в течение короткого времени .Акцент на короткое время - хост отвечает за управление скриптами, которые потребляют слишком много ресурсов на общем сервере, так как это может повлиять на других клиентов.
Должен ли я искатьспециализированный хостинг для размещения приложений?
Вам нужно быть более конкретным.Большинство сайтов в наши дни являются «приложениями».Если вы делаете больше, чем просто обслуживаете веб-страницы и постоянно запускаете интенсивные сценарии, которые выполняются в течение определенного периода времени, то вам, возможно, придется перейти на выделенный хостинг.Не только для вашего блага, но и для блага других на общем сервере!