2016-11-02 4 views
-2

Я хочу знать о некоторых библиотеках кэш-памяти, которые будут использоваться с весной. Я хочу, чтобы кеш был централизован распределенным, поскольку у меня есть несколько серверов. Это также исключает guava (кеш в памяти). Redis/Jedis и Couchbase - это два варианта, но без поддержки java. Им нужно, чтобы все java-объекты/beans были сериализуемыми. Guava поддерживает Java, но находится в процессе. Редиссон кажется хорошим, но я читал, что ему не хватает поддержки и обслуживания по сравнению с Джедис.Кэш и весна

Я хочу предотвратить изменения кода в значительной степени и, следовательно, не хочу, чтобы мои бобы реализовали Serializabe, и я не хочу конвертировать мои объекты в Json или Strings.

+0

https://spring.io/guides/gs/caching-gemfire/ –

+0

Jedis кластер все еще находится под разработка – rohanagarwal

+0

Запросы на рекомендации по программному обеспечению не соответствуют темам ... –

ответ

1

Для меня ваши требования противоречат друг другу. Вы должны выбрать один из

  1. Нет сериализации любого рода. Но это работает только для кеша в одном JVM.
  2. Распределенный кеш. Данные хранятся вне приложения JVM. Возможно для многих узлов. Но для этого требуется сериализация . Будь это Java-сериализация, JSON, Arvo, Kryo, Parquet, protocollBuffers. Данные передаются по сети в сериализованной форме.

Независимо от того, что вы выберете, http://docs.spring.io/spring/docs/current/spring-framework-reference/html/cache.html поможет вам. Он поддерживает

  • JDK ConcurrentMap на базе Cache
  • Ehcache на основе Cache
  • Кофеин Cache
  • гуавы Cache
  • GemFire ​​на основе Cache
  • JSR-107 Cache

Почему вы считаете, что Redis/Jedis and Couchbase are lacking support for java? У них очень хорошая поддержка, но ваши объекты должны быть сериализованы.

Для Redis, он поддерживается в кэш отведение http://docs.spring.io/spring-data/redis/docs/1.7.4.RELEASE/reference/html/#redis:support:cache-abstraction

Аналогичный проект существует для Couchbase https://github.com/couchbaselabs/couchbase-spring-cache

+0

Да, я пропустил это. Что-то, что нужно отправить по сети, должно быть сериализовано. – rohanagarwal

Смежные вопросы