Apache2 optimize pèfòmans

Anpil moun sèvi ak apache2 kòm yon sèvè entènèt. Sepandan, kèk moun panse sou optimize pèfòmans li yo, ki dirèkteman pwopòsyonèlman afekte vitès loading nan paj sit, vitès la nan pwosesis scripts (an patikilye php), osi byen ke yon ogmantasyon nan chaj CPU ak yon ogmantasyon nan kantite RAM itilize.

Kidonk, manyèl sa a ta dwe ede débutan (e pa sèlman) itilizatè yo.
Tout egzanp ki anba a yo te itilize sou Franbwaz PI 3, Debian 9, Apache 2.4.38, PHP 7.3.

Se konsa, kite a kòmanse.

1. Enfim modil ki pa itilize yo

Premye metòd la se tou senpleman enfim modil ke ou pa itilize:

Ou ka wè lis modil yo itilize kounye a ak kòmandman an:

apache2ctl -M

Pou enfim modil la, sèvi ak kòmandman an:

a2dismod *название модуля*

An konsekans, pou pèmèt modil la, sèvi ak lòd la:

a2enmod *название модуля*

Tanpri sonje ke lè w ap itilize a2dismod, non modil la dwe ekri san mo modil la li menm.

Pou egzanp, si ou se nan pwodiksyon an nan lòd la apache2ctl -Mproxy_module, Lè sa a, pou enfim li ou bezwen sèvi ak lòd la - a2dismod proxy

Modil ki chaje sistèm nan pi plis (soti nan eksperyans pèsonèl) yo se:

  • PHP, Ruby, Perl ak lòt modil pou plizyè lang scripting
  • Ssl
  • Rewrite
  • CGI

Se konsa, nan ka kote ou pa bezwen modil sa yo, mwen rekòmande enfim modil sa yo.

Epitou, apre enfim nenpòt modil, mwen rekòmande pou itilize lòd la - apache2ctl konfigirasyon, ki pral tcheke konfigirasyon sit yo itilize yo epi si nenpòt nan modil ki andikape yo te nesesè pou yo, li pral jenere yon erè.

2. Chanje MPM (Multi-Processing Modil) epi itilize php-fpm

Pa default, apre enstalasyon, apache2 itilize MPM Prefork (1 fil pou chak koneksyon 1), ki siyifikativman diminye pèfòmans, men an menm tan amelyore estabilite ak sekirite.

Men, pou optimize pèfòmans, mwen rekòmande pou itilize MPM Worker, ki pèmèt ou sèvi ak plizyè fil pou chak koneksyon.

Pou pèmèt li nou itilize kòmandman sa yo:

a2dismod mpm_prefork  //Отключаем prefork
a2dismod php7.3  //Отключаем модуль php, который зависит от prefork
a2enmod mpm_worker  //Включаем worker

Sepandan, lè w ap itilize Worker ou ka rankontre yon pwoblèm paske... Modil php7.3 la depann de modil Prefork la.

Pou rezoud pwoblèm sa a, ann enstale modil php7.3-fpm, ki pral itilize pou kouri script PHP:

apt-get update && apt-get install php7.3-fpm  //Устанавливаем
systemctl enable php7.3-fpm && systemctl start php7.3-fpm  //Добавляем в автозагрузку и запускаем
a2enmod php7.3-fpm && a2enconf php7.3-fpm.conf  //Включаем модуль и конфиг для него

Li se vo anyen ke lè l sèvi avèk php-fpm pral redwi tou kantite RAM itilize pa pwosesis la apache2 ak yon ti kras akselere pwosesis la nan script PHP.

3. Konklizyon

Se konsa, ak aksyon senp sa yo nou te kapab optimize pèfòmans ak redwi chaj la sou machin nan (nan ka sa a RPI3).

Natirèlman, gen dè santèn de lòt opsyon optimize, tankou pèmèt konpresyon (ki se reyèlman itil, men pifò yo deja pèmèt pa default), chanje anviwònman MPM (fichye konfigirasyon), enfim HostnameLookups, elatriye, men nan atik sa a mwen te eseye reflete Sa yo se pwen sa yo ki te ede m 'pi plis, e mwen espere ke yo pral ede lòt moun.

Sous: www.habr.com

Add nouvo kòmantè