Spring Boot: работа с NoSQL технологиями, Redis

Spring Data предоставляет дополнительные проекты, которые помогут вам получить доступ к различным технологиям NoSQL, включая:

  • MongoDB
  • Neo4J
  • Elasticsearch
  • Solr
  • Redis
  • GemFire или Geode
  • Cassandra
  • Couchbase
  • LDAP

Spring Boot обеспечивает автоматическую настройку для Redis, MongoDB, Neo4j, Elasticsearch, Solr Cassandra, Couchbase и LDAP. Вы можете использовать другие проекты, но вы должны настроить их самостоятельно.

Redis

Redis - это кэш, брокер сообщений и многофункциональное хранилище ключей-значений. Spring Boot предлагает базовую автоматическую настройку для клиентских библиотек Lettuce и Jedis, а также надстроек, предоставляемых Spring Data Redis.

Существует spring-boot-starter-data-redis стартер для удобного сбора зависимостей. По умолчанию используется Lettuce. Этот стартер обрабатывает как традиционные, так и реактивные приложения.

Также предоставляется spring-boot-starter-data-redis-reactive стартер для согласованности с другими хранилищами с реактивной поддержкой.

Подключение к Redis

Вы можете добавить автоматически настроенный экземпляр RedisConnectionFactory, StringRedisTemplate или простой RedisTemplate, как и любой другой Spring Bean. По умолчанию экземпляр пытается подключиться к серверу Redis по адресу localhost:6379. В следующем листинге показан пример такого компонента:

@Component
public class MyBean {

    private StringRedisTemplate template;

    @Autowired
    public MyBean(StringRedisTemplate template) {
        this.template = template;
    }

    // ...

}

Вы также можете зарегистрировать произвольное количество bean-компонентов, которые реализуют LettuceClientConfigurationBuilderCustomizer для более сложных настроек. Если вы используете Jedis, JedisClientConfigurationBuilderCustomizer также доступен.

Если вы добавляете свой собственный @Bean любого из автоматически настраиваемых типов, он заменяет значение по умолчанию (за исключением случая RedisTemplate, когда исключение основано на имени компонента, redisTemplate, а не на его типе). По умолчанию, если commons-pool2 находится в classpath, вы получаете фабрику пула соединений.


Читайте также:


Комментарии

Популярные сообщения из этого блога

Методы класса Object в Java

Как получить текущий timestamp в Java

Основные опции JVM для повышения производительности и отладки