Question

I am using EHCache as second level cache for my application's Hibernate DAO layer. To implement distributed cache I am planning to include Terracotta Server.
Recently I came to know about Terracotta's another product Big Memory.
Few questions regarding that:

  • How is Big Memory will help on top of Terracotta/EhCache?
  • Will it compliment Terracotta/EhCache implementation?
  • Will it be worth giving a try?

I work on a Java EE application which has a flex UI, Hibernate ORM layer, SQL Server 2008 and Tomcat application server.

Was it helpful?

Solution

How will Big Memory help on top of Terracotta/EhCache?

The way I've understood the point of BigMemory is that it stores large amounts of data on the memory outside JVM. This will help if you have lots of stuff you want to be cached, so much so that the GC times are impacting your performance like explained here.

If your stuff fits with your cache just fine and you don't experience such slowups, I would imagine Big Memory can even slow you down in contrast to terracotta, as heap within JVM would be faster than outside JVM. At least, it would not improve much.

Will it compliment Terracotta/EhCache implementation?

Based on the documentation, integration to ehcache/terracotta should be quite seamless. So, yes.

Will it be worth giving a try?

I'd go first with Terracotta, measuring memory usage, GC times and the impact, and if it would seem like Big Memory could help some more, then sure. If it looks ok, no reason to add extra stuff.

OTHER TIPS

BigMemoryGO offers upto 32 GB free usage. I would suggest to give a try to BigMemory.

BigMemory Go lets you keep all of your application's data instantly available in your server's memory so I don't think it will slow down your app in contrast to Terracotta.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top