Salex, cikkek, apache prefork konfigurálása in
Multiprotsessovoy Processing modul (MPM - Multi-Processing Module) prefork hordoz kötetlen, predrazvetvlyayuschiysya web-szerver, amely kezeli lekérdezések, 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:
# TimeOut: A másodpercek száma a beérkezés és a küldés előtt.
TimeOut 300
# KeepAlive: Megengedi vagy nem engedélyezi a tartós kapcsolatokat (több mint
# egy kérés kapcsolatonként. A kikapcsoláshoz állítsa "Ki" értékre.
KeepAlive On
# MaxKeepAliveRequests: A megengedhető kérelmek maximális száma
# egy tartós kapcsolat során. Állítsa 0-ra, hogy korlátlan mennyiséget biztosítson.
# Javasoljuk, hogy hagyja ezt a számot magasra, a maximális teljesítmény érdekében.
MaxKeepAliveRequests 100
# KeepAliveTimeout: Másodpercek száma, amelyekre a következő kérést várni kell
# azonos ügyfél ugyanazon a kapcsolaton.
KeepAliveTimeout 15
## Szerver-pool méret szabály (MPM specifikus)
# az MPM előforköznie
# StartServers: a kiszolgálófolyamatok számának megkezdése
# MinSpareServers: minimális számú szerverfolyamat
# MaxSpareServers: a szerverfolyamatok maximális száma
# ServerLimit: MaxClients maximális értéke a szerver élettartamára
# MaxClients: a kiszolgálófolyamatok maximális száma
# MaxRequestsPerChild: maximális számú kérés szerverfolyamat
Most minden beállításhoz.
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.
Megmaradnak a tartós kapcsolatok? A kikapcsoláshoz válassza a Ki lehetőséget.
Bomló vegyületet (állandó kapcsolatot, tartsa-életben) - típusú virtuális összeköttetések között, a szerver és a kliens, ahol a szerver is szolgálhat egynél több kérést ugyanazon ügyfél részeként ugyanazon vegyület, azaz 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.
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.
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.
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.
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!
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.
Az MPM előválasztásnál ez az irányelv meghatározza a maximális MaxClients értéket az Apache szerver folyamatának élettartamára.
Ennek az irányelvnek az alkalmazásával különösen körültekintő!
Ha a ServerLimit értéke a szükségesnél jóval magasabb, akkor szabad megosztott memóriát fog használni (kiosztott, kiosztott).
Ha a ServerLimit és a MaxClients magasabb, mint a rendszer képes kezelni, akkor az Apache nem indul el, vagy a rendszer instabillá válik.
Ezt az irányelvet csak az MPM előválasztással használja, ha a MaxClients-et 256-nál nagyobbra kívánja állítani (alapértelmezett).
Ne állítsd be az irányelv értékét a MaxClientsben beállított értéknél magasabb értékre.
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.
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.
Megjegyzés:
Egy nem használt (üres) folyamat az, amely nem kezeli a kérést.