On 9/17/06, Christian S <chsu79@gmail.com> wrote:
I excluded cross posting to erlang-questions.

It is quite difficult to answer your inquiry since you are vague in
describing the problem and what constricts your possible solutions.

If you are confident in yaws and know that you can reimplement what
the php code in erlang/yaws in financially sound time I think this is
the best move. Most likely situation: Managment will not agree to
_try_ this approach if you ask them permission. If you do it anyway
you have the scenarios:
a) they will see that it works and just trust your judgement as the engineer
b) they will complain loudly that you picked a platform "nobody ever
heard of" and that they will not be able to replace you if you ever
leave (not that it is true)
If you feel that you are taking a risk by doing something without
permission, then that is exactly the same feeling managment will feel
if they give you explicit permission to try it. In the end, it is
about you using PHP for day-to-day work or using erlang. What do you
want and what are you willing to risk?

Agreed. I am still trying to find out how much room I'll have to maneuver.
As it stands, I'll probably be able to try moving the entire application to Yaws at a later stage in the project. I'm certain it can be done within a reasonable amount of time/budget.

Is the problem that php needs to share state with erlang and erlang
share state with php? If so I suggest that you backend in a database
both erlang and php cant talk to. Databases make great cross-language
integration points.

The Erlang component will be used to keep state and calculate outcome of various user activities. Using the DB for this, a-la regular stateless PHP programming is too slow, and Erlang is the natural choice here for this kind of task. The enveloping PHP site is used for general user management, mailing and basic monitoring.

Is the problem that you want both web servers accessible behind the
same domain/IP address then I think you should look at having apache
forward requests to yaws (or other way around, though: yaws' request
relaying is documented as being a bit beta-ish).

Apache forwarding to Erlang looks like a solid idea. That means using Yaws for the Ajax functionality.

Is yaws' ability to start php on each request to run .php scripts not an option?

I'm trying to improve performance, not kill it :)

Thanks for your reply, Christian.