Database / REDIS
Mention Spring Boot Drivers for REDIS.
Spring Boot primarily supports two main Redis drivers (clients): Lettuce (which is the default) and Jedis. It abstracts these clients using the Spring Data Redis framework, allowing developers to switch between them easily.
Supported Redis Drivers
Lettuce
This is the default Redis client used in Spring Boot applications when you include the spring-boot-starter-data-redis dependency.
- It is built on Netty and is an advanced, thread-safe Redis client.
- Its thread-safe nature means a single connection instance can be shared across multiple threads, which can lead to more efficient resource usage and fewer physical connections to the Redis server.
- Lettuce supports both synchronous and reactive (non-blocking) APIs, making it a good fit for modern, reactive Spring applications.
Jedis
This client is also fully supported by Spring Data Redis, although it requires explicitly excluding the default Lettuce dependency and including the Jedis one instead in your pom.xml or build.gradle file.
- It provides a straightforward, synchronous API that closely mirrors the original Redis commands.
- Unlike Lettuce, Jedis is generally not thread-safe for shared instances, so it relies on connection pooling in multi-threaded environments to manage connections effectively.
More Related questions...