20

Are there any open source alternatives to oracle coherence?

(btw, how much does coherence cost anyways?)

Blankman
  • 259,732
  • 324
  • 769
  • 1,199
  • Oracle allows you to run a development licensed version of Coherence for free, last I checked. You can search Google for Oracle Technology Price List to get an idea of pricing. I think it's pretty variable based on # of seats/servers and support. – Ogre Psalm33 Jan 14 '13 at 21:25
  • Oracle Coherence IS open-source software (OSS) since 2020. It is licensed under the Universal Permissive License (UPL) which is Apache license compatible. Source code: https://github.com/oracle/coherence – Gunnar Hillert Nov 17 '21 at 23:50

10 Answers10

14

Hazelcast is an open source, transactional, distributed caching solution for Java. It is released under Apache license.

Hazelcast is actually a little more than a distributed cache; it is distributed implementation of queue, topic, map, multimap, lock, executor service for Java.

Talip Ozturk
  • 1,709
  • 12
  • 14
9

Infinispan is looking promising.

Kango_V
  • 1,720
  • 2
  • 15
  • 11
  • 2
    Here is a link to [Infinispan](http://www.jboss.org/infinispan/). Note that Infinispan will be better suited than JBoss Cache (or other replication based products) as it does distribution as well as replication. – Emmanuel Bernard Jun 03 '11 at 08:44
  • 2
    We are currently using Coherence, but are keeping a close eye on Infinispan with a view to changing in the near future. The licensing costs are killing us. Also very excited about Hibernate OGM. – Kango_V Jun 03 '11 at 12:52
8

EhCache provides a decent replicated cache but has nowhere near the feature set Coherence provides.

Kevin
  • 30,111
  • 9
  • 76
  • 83
5

JBoss Cache and EHCache are decent clustered cache solutions. But none of them have all the features and a nice admin console like Tangosol Oracle Coherence which is indeed the most advanced product in this category. For the price, there is a "Buy Now" button on the right of the Oracle Coherence web page.

Pascal Thivent
  • 562,542
  • 136
  • 1,062
  • 1,124
3

Memcached is also an great open source alternative that is used by a lot of high-profile & high-traffic/volume apps.

karthik
  • 193
  • 1
  • 6
2

Project Voldemort is great (free) alternative to coherence.

David Kroukamp
  • 36,155
  • 13
  • 81
  • 138
2

I have been investigating open source distributed caches and have focused on EHCahe and JBoss Pojo Cache.

They are both decent products, however the deal breaker is that my use case requires me to distribute an object graph and maintain shared references on all my nodes. EHCache cannot handle this. It uses standard java serialisation, and as such, shared references are lost.

e.g. if I have manager/employee object hierarchy, i want a single 'manager' object on all my nodes, with references to their employees. With EHCache, I dont get this, as the java serialiser copies all dependent objects. With JBoss Pojo Cache, my object graph is preserved.

The downside is that JBoss needs to instrument your classes (the primitives that make up your object graph are stored in a tree structure behind the scenes). This can cause some issues when running in an OSGi environment.

JBoss uses JGroups as its communication stack, you can choose between multicast or TCP/IP to manage communication between the nodes.

Hope this helps.

Nick
  • 21
  • 1
1

Guava Libraries

Looks promising as Google used them in their own products

AZ_
  • 21,688
  • 25
  • 143
  • 191
1

I have been watching for a good alternative also. The closest overall in features I have found are Terracotta and Redis but it would be helpful to know what aspects of Coherence are important to your project.

kevink
  • 1,958
  • 3
  • 14
  • 14
0

Check for "Berkeley DB" which is a open source and works same as Coherence

Puru
  • 1