webman Leistung
Traditioneller Framework-Anforderungsprozess
- nginx/apache empfängt die Anfrage
- nginx/apache übergibt die Anfrage an php-fpm
- php-fpm initialisiert die Umgebung, z. B. durch Erstellen einer Variablenliste
- php-fpm ruft RINIT der einzelnen Erweiterungen/Module auf
- php-fpm liest die php-Datei von der Festplatte (verwendet opcache, um dies zu vermeiden)
- php-fpm führt eine lexikalische Analyse, syntaktische Analyse und Kompilierung in opcode durch (verwendet opcache, um dies zu vermeiden)
- php-fpm führt den opcode aus, einschließlich 8.9.10.11
- Das Framework wird initialisiert, z. B. durch Instanziierung verschiedener Klassen wie Container, Controllern, Routen, Middleware usw.
- Das Framework verbindet sich mit der Datenbank und führt eine Berechtigungsprüfung durch, verbindet sich mit redis
- Das Framework führt die Geschäftslogik aus
- Das Framework schließt die Datenbank- und redis-Verbindungen
- php-fpm gibt Ressourcen frei, zerstört alle Klassendefinitionen, Instanzen, zerstört die Symboltabelle usw.
- php-fpm ruft die RSHUTDOWN-Methoden der einzelnen Erweiterungen/Module in der Reihenfolge auf
- php-fpm leitet das Ergebnis an nginx/apache weiter
- nginx/apache gibt das Ergebnis an den Client zurück
Der Anforderungsprozess von webman
- Das Framework empfängt die Anfrage
- Das Framework führt die Geschäftslogik aus (opcode-Binärcode)
- Das Framework gibt das Ergebnis an den Client zurück
Ja, ohne nginx als Reverse Proxy hat das Framework nur diese 3 Schritte. Man kann sagen, dass dies das Maximum für ein PHP-Framework ist, was bedeutet, dass die Leistung von webman mehrere Male oder sogar Dutzende Male höher ist als die traditioneller Frameworks.
Mehr Informationen siehe Stresstest