Преимущества и недостатки PHP FastCGI и mod_php ( php как модуль apache или FastCGI )

Лекция

Привет, Вы узнаете про преимущества, Разберем основные ее виды и особенности использования. Еще будет много подробных примеров и описаний. Для того чтобы лучше понимать что такое преимущества,недостатки php fastcgi,mod_php php как модуль apache или fastcgi , настоятельно рекомендую прочитать все из категории Выполнение скриптов на стороне сервера PHP (LAMP) NodeJS (Backend)

Основные различия между сборками.

Безопасность:

  • php-fpm -nginx-reverse-proxy-i-ikh-sravnenie-6245#term-mod-php"> mod_php : 
    в .htaccess будут работать директивы php_value, разрешены (точнее необходимы) права 777 (что крайне небезопасно), папки и файлы создаются не от имени пользователя, а от имени apache (в этом заключается один из недостатков: удалить такие файлы и папки без помощи администраторов Вы просто не сможете). При таком варианте будет работать 95% wap скриптов без предварительной настройки.
  • PHP FastCGI:
    в .htaccess запрещены директивы php_value (появится ошибка 500), права 777 недопустимы (вопреки заблуждениям, стоит отметить, что для записи в папку более чем достаточно прав 755, а файлам 644, или в крайнем случае, 666), файлы и папки, а также исполнение скриптов происходит от имени пользователя. При данной сборке бесплатные скрипты без предварительной настройки работать откажутся (появится ошибка 500).

Быстродействие:

  • mod_php: 
    запускается веб-сервером при каждом новом запросе . Об этом говорит сайт https://intellect.icu . На запуск приложения уходит иногда значительная часть времени, зачастую запуск занимает больше времени, чем выполняемая им далее полезная работа. Также можно отметить, что ошибки в скриптах могут привести к неработоспособности всего web-сервера.
  • PHP FastCGI:
    может быть реализовано в виде демона, т.е. оно само может являться сервером. FastCGI-приложение запущено всегда, поэтому  время на запуск не тратится, ему достаточно только выполнять полезную работу. Ошибки в скриптах не приводят к неработаспособности всего сервера.

Важно заметить, что при 300-500 соединений ощутимой разницы для нагрузки на сервер не будет, будь то fcgi или mod_php. Но при значении 1000 соединений значительно будет преобладать FastCGI.  

Подведем результаты сравнения php FastCGI и php модуль Apache (mod_php), выделив из всего выше сказанного достоинства и недостатки:

PHP, как модуль Apache

В данном случае для работы PHP используется модуль веб-сервера apache mod_php.

Достоинства

  • Самая высокая скорость работы скриптов, по сравнению с другими методами (на больших количествах запросов).
  • Простота работы, сервер сам обрабатывает скрипты.
  • Общий конфигурационный файл для всех скриптов (php.ini).
  • Возможность задания переменных конфигурации PHP в конфигурационном файле web-сервера или средствами файла .htaccess

Недостатки

  • Все скрипты запускаются с правами с которым работает web-сервер, тем самым если есть необходимость записи в какую либо директорию – права доступа необходимо дать на нее всем, т.е. низкая безопасность.
  • В случае запуска сторонних приложений скриптами (например, почтовая рассылка), нет возможности идентифицировать пользователя, который запустил процесс.
  • Излишняя нагрузка на web-сервер. Apache, занятый обработкой скриптов, может медленно отдавать другие статические данные .
  • Ошибки в скриптах могут привести к неработоспособности всего web-сервера.

PHP, как FastCGI

При этом используется модуль Apache mod_fastcgi, скрипты передаются его средствами на вход интерпретатора PHP.

Достоинства

  • Все скрипты выполняются с правами пользователя – владельца www-домена.
  • Возможность индивидуальной настройки PHP для каждого пользователя.
  • Меньший расход оперативной памяти по сравнению с модулем apache.
  • Ошибки в скриптах не приводят к падению веб-сервера в отличие от режима PHP как модуль apache.
  • За счет кэширования некоторых промежуточных данных скрипт не интерпретируется каждый раз при выполнении и достигается более высокая скорость по сравнению с PHP как CGI.

Недостатки

  • Лишний процесс пользователя (php-cgi) находится в памяти после первого обращения к процессу.

Таким образом, использование FastCGI является более безопасным, как с точки зрения прав доступа, так и с точки зрения наличия ошибок в работе посторонних скриптов, и более экономичным и быстрым способом работы PHP-скриптов. mod_php, в свою очередь , имеет некоторое увеличение быстродействия при большой (в тысячи соединений) нагрузке на сайт .

Я хотел бы услышать твое мнение про преимущества Надеюсь, что теперь ты понял что такое преимущества,недостатки php fastcgi,mod_php php как модуль apache или fastcgi и для чего все это нужно, а если не понял, или есть замечания, то нестесняся пиши или спрашивай в комментариях, с удовольствием отвечу. Для того чтобы глубже понять настоятелно рекомендую изучить комплексно всю информацию в категории Выполнение скриптов на стороне сервера PHP (LAMP) NodeJS (Backend)

338
0

Заказать контрольную или курсовую/дипломную работу

У меня мало времени и хочу
Заказать работу
или
я специалист в данной области и
Хочу заработать

Без посредников, но с опцией гаранта

Rating 9 of 10. count vote: 2
You vote:



Комментарии


Оставить комментарий

ответить

Выполнение скриптов на стороне сервера PHP (LAMP) NodeJS (Backend)

Термины: Выполнение скриптов на стороне сервера PHP (LAMP) NodeJS (Backend)