A presentation made to the Bangalore Linux User Group in January 2002. Most people don't realize just how far ahead of its time Zope was as an application server and NoSQL database.
1. Some Dope On Zope
An introduction to the Zope
application server.
Kiran Jonnalagadda <jace@pobox.com>
Based on the presentation by Tim Wilson <wilson@visi.com>
2. What is Zope?
Zope is an open source application server
written in Python that features a transactional
rd
object database, distributed control, lots of 3
party products, a search engine, and a growing
community of users and developers.
3. History of Zope
In November 1998, Digital Creations combined
Bobo, an open source Web-object toolkit, and
Principia, a commercial Web-application
platform.
DC's venture capital firm encouraged them to
open source their software and Zope was born.
DC has since renamed themselves to Zope
Corporation.
5. ZServer
❑
Supports HTTP, FTP, WebDAV, XMLRPC, FastCGI and PCGI
❑
Plays well with others (Apache, Squid)
ZServer does not make a great static content
delivery system. Proxies therefore make a
world of a difference. Zope internally supports
caching of expensive SQL queries and heavily
dynamic content.
6. Zope Core
Zope has a built-in
❑
Search engine
❑
Flexible security layer
❑
Membership
❑
Dynamic Text Markup Language (DTML)
example: <dtml-var foo>
7. Object Database
The Zope Object Database (ZODB):
❑
Behaves like a file system
❑
Supports:
❑
❑
Undos
❑
❑
Transactions
Private Versions
Scales well with fail-over support using
ZEO
9. Zope Plugins
Zope is extended in two main ways:
❑
Add-on Python Products
❑
❑
Powerful, take full advantage of Python
❑
❑
Created in the file system
Very distributable
ZClasses
❑
New object type created through the Web
❑
Requires no programming
10. Zope Advantages
I prefer Zope over other systems because:
❑
I don't have to create all the content
❑
Users can't nuke the rest of the site
❑
Easy workflow (using CMF)
❑
Acquisition makes it easy to propagate
changes
❑
Versions make it possible to experiment on
a live site
11. Zope Disadvantages
Zope isn't a cure-all because:
❑
It really helps to grok Python and OOP
❑
Most managers still haven't heard of it
''What if you get hit by a bus?''
❑
The dynamic functionality is a massive
overhead for simple sites
❑
It's not easy!
12. Acknowledgments
❑
This presentation was originally created by
Tim Wilson <wilson@visi.com> who has
graciously given me permission to reuse
his slides. The original presentation was
created using vim and latex.
❑
Most of the details listed on these slides are
taken from www.zope.org and
www.zope.com.
13. Questions?
The Indian Zope and Python User Group has
a mailing list at
http://groups.yahoo.com/group/izpug.