RE: [Zope] Large Portal requirements (was: Other web servers?)
-----Original Message----- From: Jimmie Houchin [mailto:jhouchin@texoma.net] Sent: Monday, June 14, 1999 2:41 PM To: zope@zope.org Subject: [Zope] Large Portal requirements (was: Other web servers?)
nto.
Howabout for database intensive situations like one encounters in some of the larger sites like Altavista, Goto, Yahoo, Amazon, etc.
Here are very, very large databases, probably very large indexes, multi-millions of objects, multi-multi-gigabytes to search, index. My concern is because Python does not scale with multiple processor machines, this limits ones ability to throw hardware at the situation since you are limited to the fastest single processor.
In the future, we will be have the client server model of ZODB3 (which will be a commercial product) that lets you have multiple Zope frontend processes (possibly on different machines) accessing multiple database backend processes (possibly on different machines). Also, ZServer is currently multi-threaded, but there is no theoretical limitation to making it multi-process, in which each Zope instance will have it's own Python and thus it's own global Python lock, thus giving the OS the ability to schedule multiple processes among multiple processors, a little heavier than threads on multi-processor, but *vastly* easier to impliment and far more stable.
Do I misunderstand anything.
Would Zope be appropriate for these situations? How well would Zope handle it?
For example in an article I read concerning the delay in Intel bringing out it's chipset for 8way Pentium III servers. Barnes and Noble was talking about beta-testing an 8way server to speed up their searches.
'Searching' is a whole nother question. If n Zope *processes* are all doing a search through the index at the same time and you have n processors, then each process will complete the operation without blocking each other, if multiple threads do it, then they will block each other. However, multiple processors will not speed up the time it takes to do *one* search, it will just allow multiple searches to be done concurently (which in high load situations makes each individual search look much faster). Getting into the ability break a searching algorithm down into multiple processors is complex and probably only pays off when your talking about searching through *massive* quantities of data. I mean big. If you had a Zope index with one million entries in it, you would, worst case, have to go through 20 comparison operations to find the element your looking for (Zope indexing uses a very efficient binary tree structure to store it's indexes).
Now I understand that different development models yield different results and I don't know how Barnes and Noble's website is built. I do know that B&N has a very large database with multi-millions of objects with many, many gigs of data.
Would Zope be appropriate?
Sure, I can see Zope easily scaling to this level.
I know that my website will have similar and greater requirements concerning database size and searching. Hopefully hits/traffics also will be high.
Zope and Python are my first choice.
Cool! You won't be disapointed. -Michel
Thanks for any help.
Jimmie Houchin
[snip]
_______________________________________________ Zope maillist - Zope@zope.org http://www.zope.org/mailman/listinfo/zope
(For developer-specific issues, use the companion list, zope-dev@zope.org - http://www.zope.org/mailman/listinfo/zope-dev )
At 3:15 PM -0400 6/14/99, Michel Pelletier wrote:
-----Original Message----- From: Jimmie Houchin [mailto:jhouchin@texoma.net] Sent: Monday, June 14, 1999 2:41 PM To: zope@zope.org Subject: [Zope] Large Portal requirements (was: Other web servers?)
Howabout for database intensive situations like one encounters in some of the larger sites like Altavista, Goto, Yahoo, Amazon, etc.
Here are very, very large databases, probably very large indexes, multi-millions of objects, multi-multi-gigabytes to search, index. My concern is because Python does not scale with multiple processor machines, this limits ones ability to throw hardware at the situation since you are limited to the fastest single processor.
In the future, we will be have the client server model of ZODB3 (which will be a commercial product) that lets you have multiple Zope frontend processes (possibly on different machines) accessing multiple database backend processes (possibly on different machines). Also, ZServer is currently multi-threaded, but there is no theoretical limitation to making it multi-process, in which each Zope instance will have it's own Python and thus it's own global Python lock, thus giving the OS the ability to schedule multiple processes among multiple processors, a little heavier than threads on multi-processor, but *vastly* easier to impliment and far more stable.
This sounds great! My main concern was the potential inability to throw hardware at the situation to improve performance if necessary. My preference is not with multiple processors but with multiple machines, servers. I would much rather provide redundancy, backups and failover via a multiple server farm. Just needed to know if my site gets busy enough to warrant adding more hardware I can. And throwing money at y'all can move things along. :) I am happy now. :) Sinking low in shame. :( My heart was breaking at the thought of needing Java and servlets. Like you Java is not my favorite. [snip]
If you had a Zope index with one million entries in it, you would, worst case, have to go through 20 comparison operations to find the element your looking for (Zope indexing uses a very efficient binary tree structure to store it's indexes).
Sounds Great!
Now I understand that different development models yield different results and I don't know how Barnes and Noble's website is built. I do know that B&N has a very large database with multi-millions of objects with many, many gigs of data.
Would Zope be appropriate?
Sure, I can see Zope easily scaling to this level.
Great!
I know that my website will have similar and greater requirements concerning database size and searching. Hopefully hits/traffics also will be high.
Zope and Python are my first choice.
Cool! You won't be disapointed.
-Michel
This makes my day. What a day, great news here on the Zope front and then I receive my LinuxPPC R5 CD. This brings LinuxPPC up to Redhat 6 source level. Finally glibc 2.x. :) Jimmie Houchin
participants (2)
-
Jimmie Houchin -
Michel Pelletier