2009-05-25 5 views
4

Ich möchte PHP und Erlang auf einem Webserver ausführen. Apache ist ausgeschlossen, da der Back-End-Erlang-Prozess etwa 3000 Anfragen gleichzeitig verarbeiten müsste. Also definitiv etwas mit einem kleineren Speicherbedarf wie lighttpd ...Webserver für die Ausführung von PHP + Erlang

Welchen würden Sie empfehlen? Und warum?

+0

Einige weitere Details zu genau das, was Sie erreichen möchten, würden helfen. –

Antwort

4

Erlang hat eingebaute Web-Server:

http://yaws.hyber.org/

die Sie verwenden können. Es soll wirklich sehr schnell sein.

Wenn Sie Erlang im Web verfügbar machen möchten, Yaws ist der Weg zu gehen (in nur zu lernen, Erlang, so dass dies möglicherweise falsch)

bearbeiten:

Nach ein wenig herum zu graben, Ich habe festgestellt, dass der Erlang Webserver (Yaws) PHP-Skripte ausführen kann. Ihre Antwort ist ein Erlang Webserver!

http://yaws.hyber.org/cgi.yaws

+1

Sie müssen dann PHP als CGI ausführen, was ein bisschen weniger effizient ist als die Ausführung als Apache-Modul. Eine Alternative könnte sein, mod_proxy zu verwenden, um Anfragen an den Erlang-Webserver weiterzuleiten. – troelskn

+0

Ein guter Punkt, aber die Frage betonte Parallelität, die von der extremen Nebenläufigkeit von Erlang durch Engpässe bei mod_proxy entfernt werden kann. –

+0

Ja, ich weiß, dass es irgendwie merkwürdig ist, PHP mit Erlang zu koppeln, aber ich liebe wirklich die Art und Weise, wie Erlang mit Nebenläufigkeit umgeht. Es sieht jedoch so aus, als müsste ich entweder PHP oder Erlang Engpässe machen, wenn ich dieses Modell verwenden möchte. Da PHP mit einem normalen CGI läuft, sieht es ziemlich spröde aus, wenn es um die Handhabung fortgeschrittener E/A- und DB-Anrufe geht. –

3

Sein hartes, ohne weitere Informationen, diese zu beantworten. Wozu willst du erlang und php benutzen? Ist PHP dein Frontend für einen Backend-Erlang-Prozess? Oder wird Erlang auch etwas vom Frontend machen?

Ich habe gesehen, dass Leute gut mit Nginx vor Erlang und Fastcgi tun. Du könntest den PHP durch fastcgi mit nginx laufen lassen, das das Forwarding tut. Ohne weitere Informationen wäre es schwer, mehr zu sagen.

0

Führen Sie Ihr PHP-Frontend mit allem, was Sie wollen (Apache ich hoffe) und kommunizieren Sie mit Ihrem Erlang als Backend.

lesen:

http://www.erlang-factory.com/upload/presentations/117/Todd-Lipcon-ErlangFactoryLondon2009-BuildingMulti-LanguageWebArchitecturesusingErlangandThrift.pdf

Grundsätzlich spricht wie ein PHP-Frontend laufen, weil es bei Streichern und Template-Designer ist gut ‚es bekommen‘ mit einem erlang Backend, weil es bei Gleichzeitigkeit gut, usw. dann hat er sie alle zusammen kleben mit sparsamen

beste Angebot

wo PHP saugt ist, wo Erlang zeichnet! I Und umgekehrt!