Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Was sind die Funktionen von Apache?

Was sind die Funktionen von Apache?

(*-*)浩
(*-*)浩Original
2019-11-23 16:45:555216Durchsuche

Was sind die Funktionen von Apache?

Funktionsmerkmale von Apache

Hochmodular                                                                                            > )Apache unterstützt mehr Funktionen In Form der Modularisierung kann das Hinzufügen und Entfernen verschiedener Funktionen durch Laden und Entladen von Modulen erfolgen. Stellt das Kern+Module-Modell dar;


2. Unterstützt das dynamische Laden und Entladen von Modulen.

ist eine Funktion, die dem Hot-Swapping ähnelt Dienst ohne Neustart Module laden und entladen und wirksam machen.


3. Unterstützung des Multi-Processing-Moduls MPM

Apache kann drei (Verarbeitungs-)Arbeitsmodi haben:

Prefork- --Multiprozess-E/A-Modell, ein Prozess verarbeitet eine Anfrage, ist der Standardarbeitsmodus von Apache

In diesem Arbeitsmodus gibt es einen Hauptprozess und mehrere Unterprozesse und diese Unterprozesse werden im Hauptprozess erzeugt und recycelt. Der Hauptprozess ist für die Generierung von Sockets und die Verwaltung von Unterprozessen verantwortlich, ist jedoch nicht für die Verarbeitung von Anforderungen verantwortlich. Der Hauptprozess wird als Root ausgeführt.

Der Unterprozess ist dort die eigentliche Rolle Zu Beginn gibt es mehrere inaktive Unterprozesse. Ein Prozess wartet auf die Verarbeitung einer Anforderung, eine Anforderung wird von einem untergeordneten Prozess verarbeitet und der untergeordnete Prozess wird vom Apache-Benutzer ausgeführt.

Worker ---- Mehrprozess-E/A-Modell wiederverwenden


In diesem Arbeitsmodus gibt es einen Hauptprozess, und der Hauptprozess ist Der Prozess ist auch für die Verwaltung von Unterprozessen verantwortlich. Der Hauptprozess generiert mehrere Threads, vorausgesetzt, die Anzahl der Unterprozesse ist gleich M und die Anzahl der Threads jedes Unterprozesses beträgt N. In diesem Arbeitsmodus können M * N Anforderungen gleichzeitig verarbeitet werden. Dieser Modus benötigt weniger Speicher und wird hauptsächlich für große Websites verwendet.

Ereignis-----Ereignisgesteuertes Modell


Ereignis und Worker funktionieren ähnlich, beide verarbeiten M*N-Anfragen gleichzeitig. Die Verbesserung durch das Ereignis besteht jedoch darin, dass die Threads in jedem Unterprozess detaillierter unterteilt sind, einschließlich Verwaltungs-Threads und Service-Threads. Warum ist es so konzipiert?

Wir wissen, dass die HTTP1.1-Version standardmäßig auf dauerhafte Verbindungserhaltung setzt. Wenn eine Verbindung hergestellt, aber keine Anfrage gesendet wird, wird die Bandbreite dieser Verbindung bis zum angegebenen Zeitpunkt belegt und daher nicht freigegeben. Es wurde ein Managementprozess hinzugefügt, um den Keepalive-Typ speziell zu überwachen. Wenn eine echte Anfrage auftritt, überträgt der Management-Thread die Anfrage zur Verarbeitung an den Service-Thread Service-Thread. Erhöhte Bandbreitennutzung.

4. Virtueller Host

Wenn ein so geringer Traffic mit einem dedizierten Server aufgebaut wird, lohnt es sich wirklich nicht Ich kam auf die Idee, mehrere Websites auf einem Server zu erstellen, um den Ressourcenverbrauch zu reduzieren.

Ein Server erstellt mehrere Websites. Jede Website entspricht einem anderen Domänennamen. Wenn ein externer Client darauf zugreifen möchte, löst DNS die Domänennamen dieser verschiedenen Websites auf denselben Server auf, und der Server löst die auf Domänennamen dieser verschiedenen Websites werden gemäß dem Header der HTTP-Anfrage an denselben Server weitergeleitet. Die Domänennameninformationen in der Zeile leiten die Anforderung an die entsprechende Verzeichnisressource weiter.


Tipps: Der Unterschied zwischen einem virtuellen Host und einer virtuellen Maschine-> Ein virtueller Host ist eine Funktion der Bereitstellung mehrerer Websites auf einem Host. Die Hosts, die so viele Websites unterstützen, führen dasselbe Betriebssystem aus ; Eine virtuelle Maschine ist ein System, das mehrere Hosts über VMware, LVM und andere Technologien virtualisiert. Diese virtuellen Hosts können verschiedene Betriebssysteme ausführen.

5. CGI-Universal-Gateway-Schnittstelle

unterstützt dynamische Webseiten. Es wird sehr unklar sein, dies zu sagen. Lassen Sie uns zunächst darüber sprechen, was ein Gateway ist, über das Hosts in zwei Netzwerksegmenten kommunizieren Sobald Hosts in verschiedenen Netzwerksegmenten kommunizieren, müssen die Daten zur Kommunikation zuerst an das Gateway übergeben werden, und dann kann das Gateway sie an ein anderes Netzwerksegment übertragen.

In ähnlicher Weise kann der Webserver bei CGI nur statische Seiten senden. Wenn der Server eine Dateianforderung wie index.php empfängt, kann der Server keine index.php senden.

Da es sich um eine dynamische Datei handelt, verarbeitet CGI index.php in ein vorgeschriebenes Datenformat und übergibt sie dann zur Ausführung an den PHP-Interpreter. Anschließend werden die ausgeführten Daten von CGI verarbeitet und schließlich Ergebnisse werden vom Server an den Client gesendet. Das CGI dient hier als Konvertierungsschnittstelle zwischen statischen Anfragen und dynamischen Anfragen.


6. Unterstützung von Reverse-Proxy

7. Lastausgleich kann erreicht werden

8. Unterstützen Sie Pfadaliase

Um zu verhindern, dass Benutzer das tatsächliche Verzeichnis der Serverressourcen kennen, können Sie einen Alias ​​für das Verzeichnis erstellen. Benutzer müssen nur den Alias ​​kennen, und der Alias ​​wird automatisch aufgerufen das eigentliche Verzeichnis.

9. Sicherheitsauthentifizierungsmechanismus kann implementiert werden

Das obige ist der detaillierte Inhalt vonWas sind die Funktionen von Apache?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn