David Johnson wrote:
Today, alone, we've processed 15M TX in about 2 hours (2080tps), using a
single MySQL server (not TTW), and MySQL just yawns.  In our experience,
only MySQL and Oracle are capable of doing this (and Oracle only in versions
9 and above).  This is also why I ask so many RDBMS questions on this list.

FWIW, PostgreSQL can do this too if you keep the schema simple and pay attention to fsync behavior. (Note that MySQL doesn't generally fsync by default, while PostgreSQL does.) You need to fsync to be sure you don't lose transactions in the event of a power failure or system crash. To fsync more than about 300 times per second, you need NVRAM (aka "write cache") in the disk controller. This usually means a SAN.

I do think we will need multiple instances.  I would like to use Zope and
perhaps replace Gadfly with MySQL. Has anyone done this in Zope 3? If so,
how?  I would estimate based upon my preliminary tests that Zope with ZODB
can handle about 300/tps on our hardware.

You're working well beyond the speed that ZODB is currently optimized for, so ZODB doesn't seem like a good match. However, it might be a good experiment to disable the fsync in ZODB; this would let you know how fast ZODB could perform on theoretical hardware that takes zero time to fsync.

The versioning feature of Zope alone would blow our clients away.

Can you mimic versioning in the RDBMS?

Zope3-users mailing list

Reply via email to