phpbar.de logo

Mailinglisten-Archive

[php] AW: [php] Java-Servlets und multithreading in PHP

[php] AW: [php] Java-Servlets und multithreading in PHP

Kar-Wing Lau kar-wing_(at)_kwlau.de
Thu, 7 Sep 2000 14:13:23 +0200


Hallo Johann,

erst mal vielen Dank für die schnelle Antwort. Das mit etc/java habe ich ja
schon mal gehört. Was allerdings neu für mich war, ist dass man PHP mit
einer Servlet-API kompilieren kann. Ich muss leider zugeben, mich bis jetzt
zumindest in dieser Weise noch nicht so tiefgreifend mit PHP befasst habe,
so dass mir der Unterschied zwischen einer mit Webserver-API und einer mit
Servlet-API kompilierten Version nicht geläufig ist. Hab mich
beschämenderweise bisher nur ein etwas mit der Programmierung befasst, nicht
mit dem dahinter. Aber was nicht ist, kann ja noch werden...

>	1.
>	php mit der option --with-servlet kompilieren .
>	Anstelle der gewohnten Webserver-API wird php
>	mit einer Servlet-API bereitgestellt.

Kann ich denn PHP immer noch wie gewohnt als Skriptprozessor für normale
PHP-Seiten in Apache verwenden oder ist dann PHP weil Du "anstelle der
gewohnten Webserver-API" schreibst nur noch über Servlets ansprechbar?

>	Die Benutzung von ext/java führt dazu, dass jedes
>	PHP-Skript eine komplette JVM hochfährt - und die
>	kann unter Umständen einige MB gross sein .
>	Daneben bieten Servlet-Engines in der Regel
>	Loadbalancing-Mechanismen wie ajpv12 an .
>	Diese Mechanismen werden natürlich auch vom
>	php-Servlet benutzt .

Wahrscheinlich ist dies auch so eine einfache Frage, deswegen schon mal
sorry vorab dafür:
Wenn mehrere Aufrufe an ein bestimmtes Skript "gleichzeitig" eingehen, wird
dann für jeden Aufruf des Skriptes eine JVM gestartet oder nur für das eine
Skript eine einzige JVM?

Wir haben nicht so viele Schnittstellen, die zu Java realisiert werden
sollen. Insgesamt werden es vielleicht gerade einmal eine Handvoll Skripte
sein, welche die Schnittstelle realisieren sollen. So wie es geplant sein
soll, wird der Rechner jenseits der 1 GB-Grenze für den Hauptspeicher sein.
Wenn aber jede Anfrage an ein und dasselbe Skript eine neue JVM startet,
bringt auch das nichts mehr.

>	Die Fähigkeiten der Servlet-Engine, die Last
>	über einen Cluster zu verteilen, bleibt auch
>	bei PHP erhalten .
>	Damit fehlt zwar das Threading , aber in Summa
>	sollte es gut über 19"-Racks skalieren .
>
>	(Es fehlt leider immer noch jemand, der das
>	 mal ausprobiert ;-) ).

Mal sehen, was die Technik macht. Wir sind da leider (oder zum Glück?) nicht
dafür verantwortlich. Sollte es aber über die Servlet-Engine auf einem
Cluster laufen, werde ich es gerne berichten.

Nochmals danke für die Hilfe.

Gruss,
Kar-Wing



php::bar PHP Wiki   -   Listenarchive