awesome-repositories.com
Blog
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
redis avatar

redis/lettuce

0
View on GitHub↗
5,756 stars·1,079 forks·Java·MIT·2 vueslettuce.io↗

Lettuce

Lettuce is a Redis client library for Java that provides synchronous, asynchronous, and reactive programming models for interacting with Redis databases. It supports standalone, cluster, sentinel, pub/sub, and search operations through a single thread-safe connection model that handles command execution without blocking the calling thread.

The library distinguishes itself through its reactive streams integration with Project Reactor, enabling non-blocking, backpressure-aware data processing with Mono and Flux types. It offers cluster slot routing that transparently handles MOVED and ASK redirects, sentinel-based topology discovery for automatic failover, and native transport abstraction that switches network I/O to platform-specific JNI transports like epoll or io_uring for reduced garbage collection and higher throughput. Lettuce also supports streaming result processing through callbacks to avoid full memory materialization of large collection results.

Beyond core Redis operations, Lettuce provides domain-specific capabilities including Redis Search and Query for full-text, vector similarity, geospatial, and auto-complete operations, as well as pub/sub messaging for real-time broadcasting and reception. The library includes pluggable codec architecture for transforming Java objects to Redis wire format, authentication mechanisms supporting username/password and token-based credentials with automatic refresh, and configuration options for read preferences, static node topologies, and cross-slot multi-key command execution in cluster environments.

Features

  • Redis Clients - A non-blocking, thread-safe Redis client library for Java supporting synchronous, asynchronous, and reactive models.
  • Redis Drivers - Sends Redis commands asynchronously and returns RedisFuture objects for non-blocking completion handling.
  • Redis - Discovers the current Redis master through Sentinel nodes and maintains the connection.
  • Reactive Programming Models - Builds non-blocking Redis workflows with reactive streams for backpressure-aware data processing.
  • Primary-Replica Replication - Establishes connections to Redis master and replicas, routing commands by role.
  • Reactive Redis Query Executors - Issues Redis commands reactively, returning Mono/Flux streams for non-blocking, backpressure-aware processing.
  • Cluster Clients - Executes commands across a Redis Cluster with automatic slot routing, redirect handling, and topology discovery.
  • Cluster Connectivity - Distributes commands across cluster nodes and handles slot redirections automatically.
  • Pub/Sub Clients - Provides a Redis pub/sub client for subscribing to channels and receiving real-time messages.
  • Sentinel Clients - Discovers the current master through Sentinel nodes and maintains connections during automatic failover.
  • Client Failover Integrations - Connects to Redis via Sentinel for automatic master discovery and failover in high-availability setups.
  • Slot-Based Routing - Routes commands by hash slot across Redis Cluster nodes, handling MOVED and ASK redirects transparently.
  • Redis Connection Authentications - Ships built-in authentication for Redis connections supporting username/password and token-based credentials at connection time.
  • Connection Models - Provides a single thread-safe connection that handles all command execution models without blocking.
  • Reactive Stream Integrations - Wraps Redis responses in Project Reactor's Mono and Flux types for non-blocking, backpressure-aware data processing.
  • Data Serialization Codecs - Transforms Java objects to Redis wire format using pluggable serializers for UTF-8, JSON, or binary content.
  • Pluggable Serializers - Transforms Java objects to Redis wire format through configurable serializers supporting UTF-8, JSON, and binary encoding.
  • Full Text Search - Provides full-text search capabilities including term, phrase, boolean, wildcard, and fuzzy queries on indexed Redis documents.
  • Result Streaming - Streams large Redis collection results incrementally via callbacks to avoid heap memory exhaustion.
  • Read Replica Routing Preferences - Selects which nodes handle read operations to balance consistency, latency, and availability.
  • Cluster Topology Management - Updates the cluster node map periodically or adaptively in response to redirects and disconnects.
  • Search Clients - Ships a Redis search client that creates indexes and runs full-text, vector, geospatial, and auto-complete queries.
  • Index Definitions - Defines which fields and data sources to index, enabling full-text, numeric, tag, geo, and vector searches on Redis documents.
  • Topology Discoverers - Discovers the current Redis master through Sentinel nodes and maintains automatic failover and topology updates.
  • Vector Similarity Search - Finds semantically similar documents by comparing query embeddings against indexed vector fields using configurable distance metrics.
  • Callback-Based Data Streaming - Streams large Redis collection results through callback interfaces as data arrives.
  • Publish-Subscribe Messaging - Broadcasts messages to channels and receives messages from subscribed channels using a listener pattern.
  • Pub-Sub Subscriptions - Registers a listener to receive messages published to Redis channels, enabling real-time messaging patterns.
  • Transport Abstractions - Switches network I/O to platform-specific JNI transports like epoll or io_uring for higher throughput.
  • Reactive Command Composers - Composes multiple Redis operations by flat-mapping over reactive types for non-blocking chaining.
  • Future-Based Concurrency Frameworks - Returns RedisFuture objects from asynchronous commands for non-blocking completion handling and chaining.

Historique des stars

Graphique de l'historique des stars pour redis/lettuceGraphique de l'historique des stars pour redis/lettuce

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Alternatives open source à Lettuce

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Lettuce.
  • redis/go-redisAvatar de redis

    redis/go-redis

    22,159Voir sur GitHub↗

    This project is a feature-rich Go client library designed for interacting with Redis. It serves as a comprehensive interface for managing remote data stores, enabling developers to execute standard database commands, handle complex data structures, and perform asynchronous operations within Go applications. The library distinguishes itself through its support for advanced Redis capabilities, including connection pooling, pipelining, and transactional integrity. It provides specialized primitives for managing distributed clusters, including automated topology updates and request routing to sha

    Gogogolangredis
    Voir sur GitHub↗22,159
  • predis/predisAvatar de predis

    predis/predis

    7,762Voir sur GitHub↗

    Predis is a PHP library for connecting to and executing commands against Redis and Valkey data stores. It functions as a client for managing data integration, providing dedicated implementations for cluster sharding, pub/sub messaging, and Sentinel-based service discovery. The project distinguishes itself through specialized clients for executing server-side Lua scripts with automated hash caching and a cluster client that supports gossip protocols and key distribution. It also implements a Sentinel client to manage high availability and failover within replicated environments. The library c

    PHP
    Voir sur GitHub↗7,762
  • stackexchange/stackexchange.redisAvatar de StackExchange

    StackExchange/StackExchange.Redis

    6,169Voir sur GitHub↗

    General purpose redis client

    C#
    Voir sur GitHub↗6,169
  • xetorthio/jedisAvatar de xetorthio

    xetorthio/jedis

    12,333Voir sur GitHub↗

    Jedis is a Java library and database driver used to execute commands and manage data on Redis servers and distributed clusters. It functions as a network client that provides a low-level interface for manipulating data types, including JSON and vector sets. The project serves as a connection manager featuring automatic failover and token-based authentication to secure network connections. It manages data distribution across multiple nodes through cluster-aware topology mapping and handles connection failover to maintain service availability when a primary connection fails.

    Java
    Voir sur GitHub↗12,333
Voir les 30 alternatives à Lettuce→

Questions fréquentes

Que fait redis/lettuce ?

Lettuce is a Redis client library for Java that provides synchronous, asynchronous, and reactive programming models for interacting with Redis databases. It supports standalone, cluster, sentinel, pub/sub, and search operations through a single thread-safe connection model that handles command execution without blocking the calling thread.

Quelles sont les fonctionnalités principales de redis/lettuce ?

Les fonctionnalités principales de redis/lettuce sont : Redis Clients, Redis Drivers, Redis, Reactive Programming Models, Primary-Replica Replication, Reactive Redis Query Executors, Cluster Clients, Cluster Connectivity.

Quelles sont les alternatives open-source à redis/lettuce ?

Les alternatives open-source à redis/lettuce incluent : redis/go-redis — This project is a feature-rich Go client library designed for interacting with Redis. It serves as a comprehensive… predis/predis — Predis is a PHP library for connecting to and executing commands against Redis and Valkey data stores. It functions as… stackexchange/stackexchange.redis — General purpose redis client. xetorthio/jedis — Jedis is a Java library and database driver used to execute commands and manage data on Redis servers and distributed… redis/jedis — Jedis is a Java library for connecting to Redis servers to execute commands and manage key-value data structures. It… tporadowski/redis — Redis is a high-performance in-memory key-value store that functions as a distributed cache, message broker, and NoSQL…