Weired but I am investigating the Oracle Coherence as a substitue for distribute cache. My primarr problem is that we dont have distribituted cache as such as of now in our app. Thats my major concern. And thats what I want to implement. So, lets say if I take up a machine and start a new (3rd) reading process, it will be able to connect to the cache and listen to the cache and will have a full set of cache triplicated (as of now its duplicated) Now thats waste from a common person stanpoint too. The size of the cache is 2 GB and without going distibuted its limiting us.
Thats bring me to Coheremce.
But now, we dont have database as persistent store too. we have the archival processes as our persistent store. (90 days worth of data) Ok now multiply that with soem where around 2 GB * 90 (thats the bare minimum we want to keep).
Preliminary/Intermediate analysis of Coherence as a solution.
And a (supposedly) brilliant thought crossed my mind. Why not have this as persistant storage with my distributed cache. Does Oracle Coherence support that. I will get rid of archiving infrastructure too (i hate daemon archiving processes). For some starnge reasons, I dont wanna go to the DB to replace those flat files.
What say?, can Coh开发者_开发百科erence be my savior? Any other stable alternate too. (Coherence is imposed on me by big guys, FYI)
You can do most of the above with Coherence. Since it's mainly an in-memory store, you will need enough physical RAM to store 90*2Gb (but not all of this needs to be in one VM, or one machine, obviously.) Coherence also has persistence configuration to save and load cache data from disk, but I am not sure of the file format, probably some Coherence-specific thing.
A commercial alternative to Coherence is Gemfire. They have very similar features and about the same level of maturity. There is also, of course, a good open-source product called Ehcache.
Try Hazelcast!
Hazelcast (http://www.hazelcast.com) is an open source, transactional, distributed caching solution for Java.
Hazelcast is actually a little more than a distributed cache; it is distributed implementation of queue, topic, map, multimap, lock, executor service for Java.
Read about 100 node Hazelcast cluster here.
精彩评论