Gilles Ganault a écrit :
HelloUntil now, the modest web apps I wrote were all in PHP because it's available on just about any hosted server. I now have a couple of ideas for applications where I would deploy my own servers, so that I'd rather write them in Python because I find the language more pleasant to write with. I read that the traction for the mod_python module isn't as strong as mod_php, so I guess I should consider the alternative, which is writing a long-running process with some framework like TurboGears or Django. To make an informed choice, I'd like your feedback on this: 1. Is mod_python a bad choice today? If yes, are there other PHP-like modules available, ie. the Python code is hosted in pages that are loaded every time a user calls them?
I indeed wouldn't use mod_python for web app development, unless I need really strong integration with apache and don't care for portability (=> deploying on other web servers).
And while we're at it, the server page model (PHP etc) is just braindead for anything more complicated than a simple personal home page. FWIW, even PHP coders tend to go away from it and turn to more "structured" frameworks like Symfony or CakePHP - which look much more like Django, TG, Pylons or (for CakePHP) Ruby On Rails.
2. If you think I should consider long-running processes, are the frameworks reliable enough so that I shouldn't fear crashes every so often?
My experience is that they are usually much more reliable than most PHP code around.
3. What about performance as compared to equivalent PHP/MySQL apps?
The right question here would be "what about performances as compared to equivalent PHP apps of equivalent quality written using similar frameworks, deployed on equivalent web servers and getting equivalent loads".
Ok, to make a long story short: I never had any performance issues so far with app written in Django, and never heard of anyone reporting such issues. <troll>I whish I could say the same about Zope/Plone...</troll>
-- http://mail.python.org/mailman/listinfo/python-list
