Az apache prefork beállítása, leon1010

A Multi-Processing Module (MPM) egy unflexed, elő-elágazó webszerver, amely kezeli az olyan kérdéseket, mint az Apache 1.3. Ez szükséges a könyvtárakkal való kompatibilitás biztosításához.






Ez is a legjobb MPM az egyes kérelmek elkülönítésére, így egyetlen lekérdezéssel kapcsolatos probléma nem érinti másokat.
Az MPM prefork nagyon autonóm, és ritkán van szükség a beállítások alapértelmezett megváltoztatására.
Az MPM legfontosabb paramétere a MaxClients!

HOGY MŰKÖDIK:
Van egy fő (szülő) folyamat, amely felelős a gyermeki folyamatok megteremtéséért, amelyek viszont meghallgatják a kapcsolatokat és feldolgozzák az ügyfél kéréseit. Az Apache mindig megpróbál fenntartani a fel nem használt szerverfolyamatokat, amelyek készen állnak a bejövő kérelmek feldolgozására.
Így az ügyfelek nem várhatják meg az új gyermekprocesszorok létrehozását, amelyek elosztásra kerülnek kérésük megkezdése előtt.
StartServers irányelvek. MinSpareServers. A MaxSpareServers és a MaxClients szabályozza, hogy a szülőfolyamat hogyan hozza létre a gyermekfolyamatokat a szolgáltatási kéréseknek.

Általánosságban elmondható, hogy az Apache nagyon autonóm, így a legtöbb weboldal esetében nem szükséges módosítani ezeket a beállításokat az alapértelmezett értékektől.

Az oldalak, amelyek kiszolgálni több mint 256 egyidejű kérések lehet, hogy növelni kell MaxClients, és webhelyeket, amelyek a korlátozott memória szerver, akkor lehet, hogy csökkenti az értékét MaxClients, hogy ne hozza a szerverről a szükséges memória SWAPO lemezre (csere memóriából a lemezre és vissza), ami súlyos lassuláshoz vezet a munka során.

Majdnem a httpd.conf fő konfigurációs fájl elején a következőket látjuk:

Most az egyes beállítások sorrendjében ...

TimeOut300 (alapértelmezett)
A várakozási vagy küldési kísérlet előtt az időtúllépés (másodpercben) időtúllépési üzenetet küld.

KeepAliveOn (alapértelmezett)
Megmaradnak a tartós kapcsolatok? A kikapcsoláshoz válassza a Ki lehetőséget.
Tartós kapcsolat (tartós kapcsolat, tartós életben tartás) - a virtuális kapcsolat típusa a szerver és az ügyfél között, amelynél a szerver ugyanazon kliensnél egynél több kérelmet tud kiszolgálni ugyanazon a kapcsolaton belül, pl. amely nem ér véget, amint a szerver szolgált az első ügyfél kérésére ez a kapcsolat létrejött, és várja beérkezett további kérelmek ugyanazon a csatornán.







MaxKeepAliveRequests100 (alapértelmezett)
Egyetlen állandó kapcsolatra vonatkozó kérelmek maximális száma.
A 0 érték megszünteti a korlátozásokat (korlátlan számú kérés engedélyezett).
A maximális teljesítmény érdekében nagy érték ajánlott.

KeepAliveTimeout15 (alapértelmezett)
A következő kérés időtúllépése (másodpercben) ugyanabból az ügyfélből ugyanazon tartós kapcsolaton belül.

StartServers5 (alapértelmezett)
A StartServers irányelv meghatározza a gyermekfolyamatok számát. létrehozva a kiszolgáló indításakor.
Mivel a folyamatok száma dinamikusan változik a terhelés függvényében, általában nem szükséges ezt a paramétert konfigurálni.

MinSpareServers5 (alapértelmezett)
A MinSpareServers irányelv meghatározza a nem kívánt * kiszolgálói gyermekfolyamatok kívánt minimális számát.
Ha a szabad folyamatok kisebbek a MinSpareServers értékénél, a szülőfolyamat új gyermekfolyamatokat hoz létre, maximális gyakorisággal 1 másodpercenként.
Ez a beállítás csak nagyon elfoglalt helyeken szükséges.
A paraméter nagyszámú megemelése szinte mindig rossz ötlet!

MaxSpareServers10 (alapértelmezett)
A MaxSpareServers irányelv meghatározza a fel nem használt * kiszolgáló gyermekfolyamatok kívánt maximális számát.
Ha több mint a fel nem használt folyamatok MaxSpareServerei vannak, akkor a szülőfolyamat meg fogja ölni a többit.
Ez a beállítás csak nagyon elfoglalt helyeken szükséges. A paraméter nagyszámú megemelése szinte mindig rossz ötlet!
Ha megpróbálja beállítani a MinSpareServersnél alacsonyabb értéket, akkor az Apache automatikusan hozzárendeli MinSpareServers + 1-hez.

MaxClients
Ez az MPM legfontosabb paramétere, amely meghatározza a gyermekfolyamatok maximális számát. amely lehetővé teszi a futtatását (amelyet a kérések feldolgozására hoznak létre).
Az érték magasra van állítva, hogy egyszerre több kérelmet is kezeljen, és kisebb legyen a memóriafelhasználás csökkentése érdekében!
Mennyit állít be ebben a kiigazításban, annyira, és van folyamata a végrehajtásra való várakozásra.

MaxRequestsPerChild10000 (alapértelmezett)
Felügyeli, hogy a kiszolgáló milyen gyakran dolgozza fel a folyamatokat. megöli a régieket és újakat indít, vagyis megadja a kérések számát, amelyeket a gyermek folyamat a túlcsordulás előtt feldolgozhat.
Ez dirrektiva hasznos annak érdekében, hogy elkerülhető legyen a hosszú távú folyamatos működés, ha az Apache (vagy könyvtárak általa használt) szivároghat memória vagy egyéb források, mint egy túlfolyó utódfolyamat erőszakkal véget ért.
A legtöbb rendszerre ez nem szükséges, ám egyesek szenvednek a könyvtárakban.
Az érték 0-ra állítása megszünteti a korlátozásokat.
A KeepAlive lekérdezésekhez. Csak az első kérés számít a MaxRequestsPerChild korlátra. Valójában ez megváltoztatja a gyermekprocesszusra mutató linkek számának korlátozását.

Tehát a beállítások értékének módosításával jelentősen növelheti a webhely sebességét, vagy fordítva, lelassíthatja és instabilitást okozhat a rendszerben. :)
Sok szerencsét!




Kapcsolódó cikkek