Опытный - Репутация: 187
- Webmoney BL: ?
| M_W, да, fastcgi в принципе то же самое что и php-fpm, но есть существенная разница. CGI - тоже оно, но не совсем. Давайте начнём с CGI и чем он отличается от обычного Apache по-умолчанию. Апач с mod_php исполняет php-код сам, отъедая при этом кучу ресурсов и делая это внутри своих процессов. Когда используется режим CGI - это значит апач не обрабатывает php сам, а запускает php-cgi для каждого php-скрипта и забирает у него результат обработки. Т.е по сути это даже несколько усложняет схему: пользователь шлёт запрос к nginx > тот обращается к apache > апач запускает скрипты через cgi и получает результат их выполнения > собирает из них html и отдаёт его nginx > тот собирает всю статику, нужную для этой html страницы в кучу > отдает пользователю. Fastcgi это тот же cgi, но отличается от него тем, что оно позволяет апачу не запускать для каждого скрипта отдельный процесс, а запустить один или несколько процессов и отдавать скрипты ему, получать от него ответ. Это немного производительнее, чем cgi, засчёт того, что операции создания процессов для ОС считаются довольно ресурсоемкими. Но в этой схеме всё тот же apache. fastcgi без апача в данном случае работать не может, это все равно модуль mod_fastcgi. php-fpm - это fastcgi process manager. Он представляет из себя отдельную службу, которая работает независимо от какого-либо вебсервера. Он может сам принимать запросы от вебсервера через unix-сокет или через сетевое соединение. Другими словами, вы можете держать сайты на одном сервере, а php-скрипты исполнять на другом. И в этом случае, апач становится не нужен, потому как nginx может работать с php-fpm сам, напрямую. Апач тоже может работать в таком же режиме с php-fpm, но это не имеет смысла. php-fpm не может отдавать статические файлы или html, он может только исполнять php. получается такая схема: запрос пользователя > nginx > php-fpm >nginx, он собирает из ответа php и статики страницу > отдаёт пользователю. FPM в разы производительнее apache, в каком бы режиме тот ни был запущен. Теперь, что касается ISP. Тот режим, о котором я говорю - nginx+php-fpm - доступен только в ISP manager 5-й версии. Примерно вот так выглядят настройки в этом режиме. Вкратце о различиях режимов работы панели также можете посмотреть в документации ISP. При этом, сменять на ходу на этот режим через ISP следует с осторожностью, ибо можно потерять всю текущую конфигурацию сайтов на VPS - она будет заменена на новую, и если сайты с ней не заработают, то переключить обратно так легко уже не получится. В ISP 4 этого режима вообще нет, поэтому там можно настроить это только вручную, без ISP, и то, если будете после этого вносить изменения в конфиги сайтов через панель, все настройки слетят к ISP-шным, т.е на апач. |