I want to know about some cache libraries to be used with spring. I want the cache to be centralised distributed as I have multiple servers.This also rules out guava(in-memory cache). Redis/Jedis and Couchbase are two options but with lacking support for java. They need all java objects/beans to be serializable. Guava supports java but is in-process. Redisson seems good but I read that it lacks support and maintenance compared to Jedis.
I want to prevent code changes to a great extent, and thus don't want my beans to implement Serializabe, neither do I want to convert my objects to Json or Strings.
For me your requirements are contrary to each other. You need to choose one of
No matter what you choose, http://docs.spring.io/spring/docs/current/spring-framework-reference/html/cache.html will help you. It has support for
Why you believe that
Redis/Jedis and Couchbase are lacking support for java?
They have very good support, but your objects must be serialized.
For Redis, it is supported as cache abstraction by http://docs.spring.io/spring-data/redis/docs/1.7.4.RELEASE/reference/html/#redis:support:cache-abstraction
Similar project exist for Couchbase https://github.com/couchbaselabs/couchbase-spring-cache