Mailinglisten-Archive |
Hallo Kar-Wing, hallo Liste, Kar-Wing Lau schrieb: > 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? Ja, das macht die Demo-web.xml aus dem sapi/servlet- Verzeichnis: Sie sorgt dafür, dass jede Seite mit der Endung .php vorher von dem PHP-Servlet bearbeitet wird. Für PHP-Seiten ändert sich also nichts, ausser, dass sie nicht vom Apachen, sondern vom Servlet- Server wie z.B. Tomcat bedient werden. > 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? Nein, so klar ist das wirklich nicht . Aber es ist wirklich der Fall: fuer jeden Zugriff auf das Skript wird eine JVM gestartet . Zitat aus ext/java: With ext/java, no Java Virtual Machines are created until the first Java call is made. This not only eliminates unnecessary overhead if the extension is never used, it also provides error messages directly back to the user instead of being burried in a log some place. For people interested in robustness, performance, and more complete integration with Java, consider using the sapi/servlet interface which is built upon the Java extension. Running PHP as a servlet enables PHP to utilize the existing JVM and threads from the servlet engine, and provides direct access to the servlet request and response objects. Sprich: Ja, für jeden Zugriff auf das Skript, das ueber ext/java auf Java zugreift, wird eine JVM gestartet. Also nicht eine für jedes Skript, sondern eine für jeden Aufruf . Über diese Maschine können aber beliebig viele Java-Objekte benutzt werden . Deshalb die obige Empfehlung, die Servlet- Variante zu nutzen : Hier wird eine Reihe von JVM zur Verfügung gestellt, die dann an die einzelnen Anfragen verteilt werden. Diese JVMs können auch auf verschiedenen Rechnern stattfinden . Für php-Skripte, die kein Java benutzen, wäre es allerings ein kräftiger Overhead, sie über die Servlet-maschinen zu jagen. > 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. Ja, das wäre sicher interessant :-) . Viele Grüße, johann
php::bar PHP Wiki - Listenarchive