5
votes

Hey I'm currently running ehcache with spring in tomcat. I have a couple webs servers running their own instance of ehcache which I want to now moved to a shared/distributed cache. Im not looking to use a commercial license just yet until we are happy with its performance and need more formal support while we scale out.

What has me confused is the ehcache/teracotta site. All the documentation seems geared towards running ehcache cache withing a teracotta server which I can then have my webservers connect to by updating my ehcache config files... however it seems like the instructions are for using a commercial version?

I dont really need the clustering now ( and can understand if that is part of an enterprise license) but I had thought that I can setup an opensource distributed cache instance? Does anyone have any links to a how to? Or just general instructions on how to move from the embedded instance to a shared instance?

3

3 Answers

2
votes

You can set up an open source terracotta server (the maven repo is described here: http://terracotta.org/confluence/display/docs330/Maven) -- but, you might want to look at RMI based distribution of ehcache instead. It seems to be more lightweight, in that you don't need a server that all nodes connect to, and you don't need to run their java bytecode instrumentation wrapper.

0
votes

There is an alternative mechanism for doing distributed caching with EHCache - jgroups replication. This pre-dates the Terracotta merger, and has nothing to do with them.

An alternative is JBossCache, which I can highly recommend.

0
votes

There's also stuff like Blitz, GigaSpaces (both javaspaces-based), OSCache, and Coherence. OSCache is open source, same for Blitz, and GigaSpaces has a community edition you can use.