I can confirm this behaviour (working well and better with more instances to support the growing load) for a configuration of 5 OFBiz machines against a cluster of 3 Postgres machines (using PgPool II).

It was also for an ecommerce application for a major Internet provider. I then I wrote the wiki page about DCC. As say Nick, you may indeed have a specific issue we did not cross...

Jacques


Le 27/06/2016 à 15:11, Nick Rosser a écrit :
Leonard,

We have clients using distributed cache -- we used ActiveMQ to synchronize any cache 
modifications from one server to the other(s). Worked very well -- and we saw a 
significant performance uptick when adding additional "slave" instances.

Our implementations are typically for eCommerce -- with minimal cache-clear 
events.

Which entities are subject to high volume cache-clear events for you? Perhaps 
you could consider removing caching for those entities?

Nick

-----Original Message-----
From: Leonard Lin [mailto:[email protected]]
Sent: Monday, June 27, 2016 6:24 AM
To: [email protected]
Subject: Memcached / central caching

Hi,
I would like to ask if someone has already investigated or implemented an adapter for OFBiz to use a central caching system like memcached, redis or the like. I know for OFBiz cluster setup there is the distributed cache clear mechanism. I did use that in the past but have found that with more than 2 instances it impacts performance of OFBiz adversely.
Symptoms we started to see in production:
- We started to see long running transaction locks, General Entity operations 
slower (might be a combination of load and clustering)
- Other idle hosts were 5%-15% busy only to process the cache-clear events 
without doing anything else
- Especially with higher load, the whole thing becomes even slower
More load -> More cluster instances -> more cache clear events -> more cycles used to process cache mgmt. -> general requests/operations slower -> so we need even more instances -> you see where it’s going
  That’s why I was thinking if someone has tried to integrate with a central 
cache.
For single host installation the local in-memory cache is surely faster, even perhaps with a 2host cluster setup, but with 3 or more hosts, I think a central cache might scale better. Also interested to hear about any thoughts on the idea and architecture. Otherwise, any pointers where in the code to look at would be appreciated.
I'm thinking to implement it as an adaptor/driver you can switch on if you want 
it.
Thanks
Best
Leo



Reply via email to