Skip to content
cruftex.net
Go back

cache2k - the high performance Java caching library is now Apache licensed!

Good news, everyone! After continuously receiving mails and seeing the growing popularity in the Android community I finally decided to switch the licence of cache2k to Apache. Why was it GPL in the first place? Well, read on…

Why GPL in the first place?

The GPL licence does not mean that it is required to make the source of any product that uses the library available to the public, but it is required to make the source available to everyone who gets the bundled product.

One of the key business principles at headissue is to ship the source code to our customers. We think that it is important to convince with actions rather than lock in the customer to our business by keeping the source for ourselves. Because of that principle, the GPL is essentially a perfect fit for us. Another factor is that we concentrate on server applications, so the code never leaves a customer’s server.

So, the general thinking was: Why should we share something with fewer restrictions than we need for our own business from other products’ licences? Furthermore, I admit it, sticking to GPL gives more potential for other business models such as dual licensing.

Why Apache now?

It’s an adjustment to the facts. Interestingly, cache2k got popular in the Android community and people are using it to build highly efficient smartphone applications. Due to the GPL rules every application distributed with cache2k would need to be licensed under the GPL as well and the source code needs to be delivered alongside. For Android developers, the GPL has a much more restrictive meaning than for server side developers, since, instead of shipping (distributing in licence lingo) to a single server you put your code in the app store and make it publicly available. Distributing your binary to everyone also means you have to make the source code available to everyone. Did this happen for the applications using cache2k? No, it did not. So now I have two options: Sue everyone who is using cache2k and not obeying the licence or face the facts. Well, think about it, should I sue everyone who just put trust in a new caching library and gave valuable feedback?!

It is not my intention to blame people using cache2k for not adhering to the licensing details. Instead, I meanwhile really believe that if I market something as a library usable for Android and as open source, people expect that they can use it without restrictions.

It’s the Apache License now, as an adaptation to reality.

About cache2k

Cache2k is a high performance Java caching library which concentrates on caching inside the JVM. The benchmarks show that it is the fastest available caching library for Java. We are currently restructuring the API, improving the documentation and working towards a 1.0 version.

Note

Update 2026: Typo and wording fixes, switch to UK English.



Previous Post
Java Caching Benchmarks 2016 - Part 1
Next Post
Java Caching Benchmarks 2016 - Part 2