Heim > Artikel > Backend-Entwicklung > Warum ist Python Web nicht beliebt?
PHP ist auf Sprachebene fast nutzlos und die Qualität der spezifischen Implementierung ist mittelmäßig, aber es gewinnt bei der kritischsten Bereitstellung: Keine andere Sprache ist so gut für den großen Maßstab geeignet als PHP Wie man es bereitstellt. Grundsätzlich ist die Bereitstellung von PHP-Anwendungen nach der Installation von Apache/mod_php so einfach wie das Kopieren von Dateien.
Auch wenn aus Performance-Gründen Alternativen wie nginx/FastCGI verwendet werden, liegt der Mehraufwand nur in der Erstkonfiguration. Sobald die Konfiguration abgeschlossen ist, dreht sich bei nachfolgenden Bereitstellungen alles um das Kopieren von Dateien. Nach dem Neustart des Servers wird Apache/Nginx normalerweise automatisch gestartet. Der Fastcgi-Manager ist für den Start des PHP-CGI-Prozesses usw. verantwortlich. Die dateibasierte Aufrufmethode von PHP-Anwendungen erfordert keine weitere Wartung.
Dies ist für Webhosting-Plattformen wie Dreamhost von entscheidender Bedeutung: Sie verfügen normalerweise über einen einzigen Server, um Tausende von Benutzern mit geringem Datenverkehr zu verwalten, und diese Benutzer haben keine Root-Rechte, um andere Prozesse auszuführen.
Verwandte Empfehlungen: „Python-Video-Tutorial“
Der Lebenszyklus von PHP-Skripten ist sehr kurz, es gibt keinen residenten Prozess und er wird nach jedem Aufruf beendet. Für Anwendungsautoren sind die Anforderungen geringer und es besteht keine Notwendigkeit, allzu viele Aspekte des Ressourcenmanagements zu berücksichtigen.
Dies unterscheidet sich stark von der Bereitstellung von Python und dergleichen: Die meisten Python-Netzwerkanwendungen wie Django, Tornado usw. erfordern einen separaten residenten Prozess (Apache/mod_python scheint ein Fehlschlag zu sein und wurde seit langem eingestellt ) aktualisiert).
Diese Prozesse erfordern zusätzliche Wartungsarbeiten, um ihr Starten und Stoppen zu verwalten, sowie zusätzliche Überwachungsprozesse, um Neustarts nach unerwarteten Beendigungen zu bewältigen. Dies erfordert ein tieferes Verständnis des Benutzers für das System.
Residente Prozesse müssen Systemspeicher belegen. Es ist normalerweise unmöglich, Hunderte oder Tausende von Anwendungen auf einem Server auszuführen. Für Dienstanbieter wie Dreamhost sind sie nicht für die Bearbeitung von Aufgaben wie WordPress-Blogs geeignet. Residente Prozesse erfordern vom Autor außerdem ein tieferes Verständnis der Systemressourcenverwaltung, der Garbage-Collection-Mechanismen usw., um Probleme wie Speicherverluste und übermäßige Ressourcennutzung zu vermeiden.
Der einfachste Weg, Python-Netzwerkanwendungen bereitzustellen, ist jetzt App Engine, das einen PHP-ähnlichen Lebenszyklus verwendet (die Anforderungsverarbeitung ist auf 30 Sekunden begrenzt, das Timeout wird beendet und der residente Prozess kann nicht ausgeführt werden). Vereinfacht die Verwaltungsschwierigkeiten erheblich, ist jedoch in China nicht zugänglich...
In Bezug auf die Popularität wird Python PHP nicht übertreffen, da viele Dienstanbieter Python nicht zur Unterstützung der vorhandenen Benutzerskala verwenden können . Aber diese Popularität bedeutet Start-ups und Fachleuten wenig. Viele Kernnetzwerkanwendungen eignen sich nicht für die Implementierung mithilfe des kurzlebigen Anforderungsverarbeitungsmechanismus von PHP (z. B. Push-Erinnerungen in Quasi-Echtzeit, Instant-Chat für Webseiten usw.) und eignen sich eher für die Verarbeitung durch residente Prozesse. Hier entfalten Sprachimplementierungen wie Python und Ruby ihre Stärke.
Die Stärke von Python liegt in der Einfachheit und Eleganz der Sprache sowie in ihrer starken Ausdrucksfähigkeit. Hacker nutzen Python gerne, um ihre Gedanken auszudrücken.
In der Webentwicklung ist die Python-Bereitstellung ein Problem, aber für kommerzielle Websites ist es kein Problem, einen VPS selbst zu verwalten. Die Vielseitigkeit von Python kann die Fertigstellung verschiedener unkonventioneller Anwendungen gewährleisten.
Einfach ausgedrückt: Wenn Sie nur eine Website zur Anzeige von Web1.0-Inhalten benötigen, ziehen Sie PHP in Betracht. Für Web2.0 können Sie Python und RoR in Betracht ziehen.
Das obige ist der detaillierte Inhalt vonWarum ist Python Web nicht beliebt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!