I'd like your thoughts and advice. I've been evaluating different middleware for a few years...testing and comparing and so forth. In the process of launching a new web application business (Alpha Motion, ETA 4/9), I've had to give everything another look and decide on a dominant platform to use. I've done the rounds...PHP, ASP, CF, J2EE, ASP.NET, Ruby, and various Python frameworks. Coming from a PHP background w/some Java, Webware is a great fit. But, unfortunately, it doesn't seem to be that easy.
In trying to find affordable hosting for my clients, *everyone* offers PHP, so that's an easy choice. But, I have issues with PHP's CGI methodology, nevermind its messy function library, less than spectacular OOP support, and verbosity. If you're willing to spend more, a lot of times you can get ASP/ASP.NET, CF, or Java. But, Python is not often supported as a web application platform. I have found some hosts that have Python available, but they lack the hooks into Apache that would make it worthwhile, e.g. FastCGI or mod_* (I'm very concerned about performance). Hosts seem to think that FastCGI poses possible security and stability problems. I haven't used it, but it sounds pretty sweet. The other sticking point is that no one wants you to have long running processes, e.g. WebKit.
That is true. It's not even worth trying to set up WebKit on a shared host unless they specifically support it.
Another concern is actually using WebKit in a multi-client situation. I do not know if WebKit has the necessary security and sandboxing to keep applications separate for different users. If it doesn't, a WebKit instance per-user does not sound appealing.
There's no real security or insulation between applications running on the same application server, so yes, you need a separate instance for each client. That's just one more process. Personally I don't think it's a big deal, and it lets you use different Unix users and avoid the kinds of challenges that, say, Zope has to take on (and multiple WebKit processes are still a lot lighter than one Zope process).
I also have concerns about the need to restart WebKit in order to introduce module changes (and sometimes application changes, in my experience). That's one nicety of some J2EE app servers--hot swapping apps, etc. It would be nice to *never* have to shutdown WebKit.
It's not a big deal to shut down the AppServer in my experience. It can be restarted in a second, without losing session data, and without losing any connections. In-place code updates are hairy in Python, and I think it's a lot more reliable to simply avoid them.
So, from where I'm standing, unless I'm ready to co-locate and essentially 'be a host' myself, Webware doesn't seem like the right choice. I know many of you are using Webware for commercial purposes. What do you?
If you don't want to do your own hosting you should look for a host that specifically supports Python environments. There's several listed here:
http://www.python.org/cgi-bin/moinmoin/PythonHosting
While they are somewhat more expensive than commodity hosts, you can still find very reasonably priced hosts.
Most of these issues will be issues in other Python web frameworks as well, and in attempting to address them some add significant complexity or make the environment difficult to work with (e.g., I don't get a good impression of how mod_python deals with code changes).
Ian
------------------------------------------------------- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click _______________________________________________ Webware-discuss mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/webware-discuss
