Apache optimeerimine madala hinnaga VPS-i jaoks Ubuntu 14.04 jaoks

Apache'i on väga lihtne installida ja lähtestada, kuid sellega on kaasas arvukalt eelinstallitud mooduleid ja seetõttu võib vähese RAM-i VPS-i kasutamisel esineda jõudlusprobleeme.

Seega pole alati vaja suuremat serverit, vaid saate lihtsalt Apache'i seaded õigesti konfigureerida ja saavutada parima võimaliku jõudluse. Siin on mõned asjad, mida peaksite selle saavutamiseks tegema.

See õpetus on mõeldud Ubuntu 14.04 LTS-i jaoks, kuid põhimõtted on sarnased ka eelmiste versioonidega.


1. Keelake Apache moodulid

Näete kõigi käsuga installitud moodulite loendit ls /etc/apache2/mods-available/ja kõiki mooduleid, mis on hetkel aktiivsed ls /etc/apache2/mods-enabled/.

Esialgsel Apache installimisel on vaikimisi lubatud 15 või enam moodulit. Neid on liiga palju ja enamikku pole vaja.

Kõigepealt tuleb koostada nimekiri kõigist hetkel aktiivsetest moodulitest ja salvestada see edaspidiseks kasutamiseks juhuks, kui mõne vajaliku välja lülitate ja uuesti sisse lülitate. Seejärel lihtsalt keelake moodulid ükshaaval käsuga (kasutades näiteks moduleName):

sudo a2dismod moduleName

... ja taaskäivitage Apache pärast iga muudatust, et näha, kas esineb tõrkeid.

Mõned moodulid, mille peaksite keelama, kui te neid ei vaja, on järgmised:

  • PHP
  • SSL
  • Uuesti kirjutama
  • Perl
  • Python

Pärast mooduli keelamist ja Apache'i konfiguratsiooni uuesti laadimist saate vigu kontrollida, avades Apache'i vealogi tekstiredaktoriga, nagu nano.

sudo nano /var/log/apache2/error.log

Kui saate veateate, lubage vastav moodul uuesti:

sudo a2enmod moduleName

Seejärel taaskäivitage Apache uuesti, kuni minimaalne loend on korrastatud!


2. Seadistage mpm_prefork

Apache'i vaikekonfiguratsiooniga (mis pole väikeste serverite jaoks hästi tasakaalustatud) võib mälu kiiresti tühjeneda ja teie pilveserver võib saada ülekoormatud. See põhjustab veebilehe pidevas laadimises rippumise. On tõenäoline, et server hoiab need surnud Apache protsessid aktiivsena, üritades sisu tarbetult teenindada, vähendades teenindamiseks saadaolevate protsesside arvu.

Selle probleemi lahendamiseks peate esmalt välja selgitama, kui palju RAM-i teie server peale Apache vajab ja Apache protsesside kasutatavat keskmist mälumahtu.

Kui Apache töötab, avage serveris ülemine käsk.

top -bn 1

Tulemuste tabelis:

  • lisage veerus RES olevad numbrid iga protsessi jaoks, välja arvatud apache2, ja seejärel eemaldage see kogu RAM-i hulgast. Oletame, et saate 600 MB .
  • saada kõigi apache2 protsesside keskmine . Oletame, et hankige 20 MB .
  • Seejärel tehke lihtsalt jagamine 600/20 = 30 maksimaalset Apache protsessi

Järgmisena redigeerige mooduli mpm_prefork konfiguratsioonifaili:

sudo nano /etc/apache2/mods-enabled/mpm_prefork.conf

See võib välja näha selline:

<IfModule mpm_prefork_module>
    StartServers             2
    MinSpareServers          2
    MaxSpareServers          5
    MaxRequestWorkers        30
    MaxConnectionsPerChild   0
</IfModule>

Kus:

  • StartServers: käivitatavate serveriprotsesside arv.
  • MinSpareServers: minimaalne serveriprotsesside arv, mida hoitakse tagavarana.
  • MaxSpareServers: maksimaalne arv serveriprotsesse, mida hoitakse tagavarana.
  • MaxRequestWorkers: maksimaalne lubatud serveriprotsesside arv käivituda.
  • MaxConnectionsPerChild: maksimaalne päringute arv, mida serveriprotsess teenindab.

Aastal MaxRequestWorkers seade, peate muutma seda iganes sa leida divisjoni.

Nüüd, kui teie VPS on ülekoormatud ja saavutab maksimaalse klientide arvu, mida see korraga teenindada saab, teenindab see neid ja teised kasutajad saavad lihtsalt kiire tõrke. Seejärel saavad nad lehe uuesti laadida ja uuesti proovida. On palju parem, kui need ühendused sulguvad kiiresti, kuid jätaksid serveri terve oleku, mitte ei jääks igaveseks lahti.


3. Vähendage oma palke

Toimivuse maksimeerimiseks saate kindlasti vähem teavet logida. Apache'i vaikekonfiguratsioonis on LogLevel seadistus hoiatuseks . Saate selle muuta veaks, et säilitada ainult veateated.

Avage Apache konfiguratsioonifail:

sudo nano /etc/apache2/apache2.conf

Leidke rida:

LogLevel warn

... ja muutke see järgmiseks:

LogLevel error

Seejärel salvestage fail ja taaskäivitage Apache koos:

sudo service apache2 restart

Vaikefail, mida Apache logisid hoiab, on /var/log/apache2/error.log .


4. Kaaluge mod_php asendamist

Kui kasutate PHP-saiti, on suur tõenäosus, et kasutate moodulit mod_php. See moodul võib põhjustada iga Apache'i alamprotsessi kasutamise üle 100 MB RAM-i, isegi kui taotletakse staatilisi ressursse, nagu pildid, css ja JavaScript.

Suurepärane alternatiiv on php-fpm moodul, mis on eraldi protsess, mis kasutab fastcgi protokolli. Php-fpm puhul võib Apache protsesside mälu langeda 10 MB-ni staatilise sisu ja 60 MB-ni dünaamilise sisu puhul.

Kuigi selle muudatusega võib olla veidi keeruline asju tööle saada, on see pingutust väärt.


5. Kaaluge mpm_preforki asendamist

Enamik Apache'i konfiguratsioone kasutab moodulit mpm_prefork, mis on lõimekindel ja kasutab mitut alamprotsessi ühe lõimega ja iga protsess käsitleb korraga ühte ühendust. Kui te ei vaja väliseid mooduleid, nagu PHP või Rails, saate selle asendada mooduliga apache2-mpm-worker , mis on sageli kiirem. Töötaja MPM kasutab mitut mitme lõimega alamprotsessi ja iga lõim käsitleb korraga ühte ühendust.

Töötajamooduli lubamiseks peate selle installima.

sudo apt-get install apache2-mpm-worker

See käsk desinstallib mpm_prefork , mos_php ja muud ühildumatud lisandmoodulid.

Jäta kommentaar

Masinate tõus: AI tegelikud rakendused

Masinate tõus: AI tegelikud rakendused

Tehisintellekt ei ole tulevik, see on siin, olevikus. Sellest blogist loe, kuidas tehisintellekti rakendused on mõjutanud erinevaid sektoreid.

DDOS-i rünnakud: lühike ülevaade

DDOS-i rünnakud: lühike ülevaade

Kas olete ka DDOS-i rünnakute ohver ja olete segaduses ennetusmeetodite osas? Oma päringute lahendamiseks lugege seda artiklit.

Kas olete kunagi mõelnud, kuidas häkkerid raha teenivad?

Kas olete kunagi mõelnud, kuidas häkkerid raha teenivad?

Võib-olla olete kuulnud, et häkkerid teenivad palju raha, kuid kas olete kunagi mõelnud, kuidas nad sellist raha teenivad? arutleme.

Googlei revolutsioonilised leiutised, mis muudavad teie elu lihtsaks.

Googlei revolutsioonilised leiutised, mis muudavad teie elu lihtsaks.

Kas soovite näha Google'i revolutsioonilisi leiutisi ja seda, kuidas need leiutised muutsid iga inimese elu tänapäeval? Seejärel lugege ajaveebi, et näha Google'i leiutisi.

Reede oluline osa: mis juhtus tehisintellektiga juhitavate autodega?

Reede oluline osa: mis juhtus tehisintellektiga juhitavate autodega?

Isejuhtivate autode kontseptsioon tehisintellekti abil teedele jõudmiseks on meil juba mõnda aega unistus. Kuid vaatamata mitmele lubadusele pole neid kusagil näha. Lisateabe saamiseks lugege seda ajaveebi…

Tehnoloogiline singulaarsus: inimtsivilisatsiooni kauge tulevik?

Tehnoloogiline singulaarsus: inimtsivilisatsiooni kauge tulevik?

Kuna teadus areneb kiiresti, võttes üle suure osa meie jõupingutustest, suureneb ka oht, et allume seletamatule singulaarsusele. Loe, mida singulaarsus meie jaoks tähendada võiks.

Suurandmete viitearhitektuuri kihtide funktsioonid

Suurandmete viitearhitektuuri kihtide funktsioonid

Lugege ajaveebi, et kõige lihtsamal viisil teada saada Big Data Architecture'i erinevaid kihte ja nende funktsioone.

Andmesalvestuse areng – infograafik

Andmesalvestuse areng – infograafik

Andmete säilitamise meetodid on arenenud alates andmete sünnist. See ajaveeb käsitleb infograafiku alusel andmete salvestamise arengut.

6 hämmastavat eelist nutikate koduseadmete olemasolust meie elus

6 hämmastavat eelist nutikate koduseadmete olemasolust meie elus

Selles digipõhises maailmas on nutikad koduseadmed muutunud elu oluliseks osaks. Siin on mõned nutikate koduseadmete hämmastavad eelised, mis muudavad meie elu elamisväärseks ja lihtsamaks.

macOS Catalina 10.15.4 täienduse värskendus põhjustab rohkem probleeme kui lahendamine

macOS Catalina 10.15.4 täienduse värskendus põhjustab rohkem probleeme kui lahendamine

Hiljuti andis Apple välja macOS Catalina 10.15.4 täiendusvärskenduse probleemide lahendamiseks, kuid tundub, et värskendus põhjustab rohkem probleeme, mille tulemuseks on Maci masinate tellimine. Lisateabe saamiseks lugege seda artiklit