Bryan a écrit :

I think I see what you mean

Err...

-- correct me if I'm wrong:

You are, sorry !-)

You want to
keep complex application data structures around between requests.

Nope. I want to keep all my settings parsed, my librairies loaded, all my connections opened etc. That is, all the time consuming stuff at app startup - which, with PHP, mostly happens for each and every request.

PHP frameworks generally allow and encourage application code
to be independent of the underlying plumbing.
This is debatable at best. PHP code (except cli PHP code of course) is
written without any care for persistent global state, concurrency
issues, race conditions etc - because it's written with the idea that
the code serving a request will be runned in total isolation. CGI
heritage here, obviously.

No, that's good web-app structure, regardless of language and server
interface. If we keep persistent global state in a shared database
rather than program variables,

Err... Did you really read what you're answering too ???

Also, I never said this execution model was necessarily bad - just that it had pros *and* cons.

And please note I'm not criticizing this
design- just pointing one of it's consequences.

Many large,
sophisticated, high-volume web apps are in PHP.
Did anyone pretend otherwise ?

How about this howler: "The PHP execution model (mostly based on CGI
FWIW) tends to be a bit unpractical for non-trivial applications".

"tends to be a bit unpractical" != "doesn't work".

Many large, sopĥisticated etc applications are written in C. Does that make C a practical application programming language ?

Now I'm sorry to say that for quite a few "sophisticated" PHP apps I've seen (and eventually had to work on), the "startup" part - parsing the include files, configuration, establishing connections etc - took a good part of the total processing time.
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to