5 ms·
We use Plone at work - not my decision I would like to stress. I can't stand it. I've never understood the reason to use an object database and the performance
by arctangent 16y ago
We use Plone at work - not my decision I would like to stress. I can't stand it. I've never understood the reason to use an object database and the performance is absolutely terrible :-(
- rbanffy 16y agoI cannot say why it's there apart from being what Zope uses, but there is little reason to use a relational DBMS for non-relational data. Data in the ZODB is pure Python and it can store just about any Python object. It's also versioning - undos come basically for free - transactional and distributable (sharding is easy between different Plone sites). As for performance, are you using a single-process installation or ZEO with multiple ZEO clients? Are you using Varnish for cache? You can route requests for static content through the cache or spread your datastore across more than one ZEO server instance. What version is it? edit: Take siebo's advice. The Plone community is the first place you should go for help.
- arctangent 16y agoWe have multiple ZEO clients, fronted by Varnish. The guy who runs all of this for us has been working with Plone for something like 5 years and is fairly sharp. We're using every trick in the book. The main problem might be that out site is very very big indeed. As for the relational/non-relational comment, I have to say that the data actually is relational. When we want to do things like reassign user privileges it's a huge pain to walk the gigantic database file. (Needless to say, it's impossible to do this in Plone - it just hangs!)
- rbanffy 16y agoThat's interesting. I cannot outsmart the Plone community, but I am very curious about what may be happening and would love to know more about it. One idea I never had to try is to shard the data by folder on different ZEO backends. But, again, siebo's advice is sound and the Plone community can sure come up with better ideas than I would.
- siebo 16y agoIf you're seeing performance issues, please have your sysadmins reach out to the Plone community. There are proven approaches to scaling Plone to support high loads and very fast page delivery. We're often running Plone with various combinations of multiple ZEO instances, Varnish, HAproxy, and Nginx. At my company we're supporting high-traffic, high-performance Plone sites for organizations including NIH, USAID, and Stanford. It's an excellent technology for large CMS and intranet projects. Big thanks to Hanno and the other Plone core devs who are constantly looking for ways to make Plone even faster.
- Retric 16y agoPerformance is not the same as scalability and trying to solve performance issues with more HW can quickly become vary costly in terms of manpower not just equipment and energy costs.
- arctangent 16y agoThanks for your advice. As far as I am aware our Plone guy is using an approach based on your suggestion. We even have a specialist Plone boutique on retainer to help us but things are still not going so great!