http://raibledesigns.com/rd/entry/oscache_vs_ehcache_for_hibernate
Comment:
About a year ago we decided to add a second level cache to our product. We wanted one that used multi cast and invalidation as we have multiple application servers running in a cluster. We went with OSCache as that was the only open source solution that supported multicast. It worked fine for a while. As we tried to support more load on our system it began to fail. I don't know if this was an artifact of threading bugs or invalidation messages failing to be received, but sometimes OSCache tries to do a lookup and fails with an exception. That was unacceptable since the exception bubbled up into our app. We didn't care if a lookup failed, it should have just logged the issue and pulled the object form the DB. Anyway, we hacked the code to catch the exception. Later we started seeing failures on put, tried wrapping that exception too. At that point we were having issues with data being correct between the app servers and started looking into EHCache.
We have been very pleased with EHCache. We are using multicast for app server discover, but using the built in TCP protocols for invalidation messages. We have not had any errors with EHCache. I highly recommend it.
We are using Hibernate 3.2 and EHCache 1.3.
Posted by Jeremy Conner on November 12, 2007 at 09:32 AM MST