I am a developer and we are studying the possibility of adopting Zope as a production platform for our clients. Actually I use PHP, Perl and ASP as server-side "platforms" and I will also be testing WebObjects although I have to say that Zope interested me much more as a programmer ^_^
Until now I have read lots of documentations, DTML looks good enough and I learned a lot about Python. But there are still some doubts that no online document could solve easily.
Concerning the installation Iīd like to know if anyone knows (or knows some document that details about) the essencial differences between the many ways of installing Zope.
Iīve used the ZServer in stand alone mode and I also have implemented the easy Proxy Reverse trick in Apache. I will try FastCGI and PCGI as soon as possible, but I have some doubts now.
My test platform is a Windows NT 4 running Apache 1.3.12. The first doubt comes to the fact that I could not find the pcgi module for NT (I do not have any kind of C compiler, so Iīll be very glad if anyone know a binare version). So Iīd like to know where can I find informations about installing Zope using PCGI in an NT Apache installation.
The second doubt: what exactly are the differences of running it in PCGI mode or in ZServer? I do understand the concept of forking a process and interfacing a web server and a process through a CGI interface as PCGI and I also understand the fact of the multithreading feature in ZServer.
Basically it would mean that each connection request will fork a new Zope connection and then maintain it in some kind of a connection pool (as databases do)? Or will there be only one process running Zope and a queue of requests to access it? What are the performance impacts, what are the hardware (memory/CPU) impacts? Personally I do not like the concept of CGI but know nothing about the Persistent CGI concept.
And what about the method of "masquerading" the ZServer through Apache? I have read solutions using the Rewrite module and the Proxy module, but it actually means (roughly speaking) that if there are 10 requests made to Apache then it will make 10 requests to ZServer so, considering only the reliability issue of the server even if Apache can handle millions of requests per second, the ZServer would fall down much faster than that so I cannot see any advantage of using Apache in front of it. Of course I understand the other advantages of Apache as itīs many configuration options, robustness as a web server, etc, but can the ZServer stay up and running in pair with Apache? Maybe thereīs any way to configure Apache to cache the pages -- as a Squid would -- so it can "filter" the requests and low the requests level that it will do to ZServer?
And what about itīs object oriented database? I also have some doubts about it. I worked a lot with relational databases as MS SQL and MySQL but never tried to study an OO approach to DB. How fast it is? How much requests can it handle without hanging, collapsing or corrupting data? I mean, anyone tried to do some study of a database that changes everytime and have queries everytime, I mean, searches in a database where itīs data changes constantly (searching a static database is much different than searching on a mutable one). Row level locking, transaction, consistency, etc, all these concepts apply here? Can it be substituted by a traditional relational database and have itīs contentes interfaced to "looks like" object oriented?
The reliability issue is important as I wouldīt like to have to write a cron to verify if the server is up and running and, if not, kill all of itīs processes and start all over again. Itīs not professional, itīs just an ugly band-aid.
Actually the PCGI module for NT is not that important as I do prefer working with Apache on Linux but some of our clients prefer working on NT as much of itīs products are already up and running on NT, so Zope on NT would be the preferred option (is Zope+NT as stable as Zope+Linux, only talking about the web server robustness).
Well, these are my doubts for now.
Thanks for the attention. I hope we can do some interesting discussion.
Fabio Akita - Developer
F/Nazca S&S / Adversiting
- Re: [Zope] Zope, Apache/NT, Reliability issues Fabio Akita
- Re: [Zope] Zope, Apache/NT, Reliability issues Martijn Pieters