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
·
predis avatar

predis/predis

0
View on GitHub↗
7,762 stars·993 forks·PHP·MIT·6 vuesgithub.com/predis/predis/wiki↗

Predis

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 covers a broad range of capabilities, including core data store operations, atomic transaction execution, and data stream management. It provides traffic management through master-slave replication routing and automatic request retries, while optimizing performance via command pipelining, persistent connection maintenance, and Unix domain socket support. Security is handled through client access authentication, network traffic encryption, and access permission management.

Features

  • Redis - Provides a comprehensive PHP client for establishing and maintaining secure connections to Redis and Valkey nodes.
  • Redis Clients - Provides a comprehensive PHP library for connecting to and interacting with Redis and Valkey data stores.
  • Service Discovery - Uses Sentinel instances to dynamically discover the network location of the current primary node.
  • Distributed Sharding Architectures - Provides client-side hash sharding to distribute keys across multiple cluster nodes for horizontal scalability.
  • Key-Value Store Clients - Provides the core implementation for executing commands to create and modify strings, hashes, lists, and sets.
  • Cluster Clients - Includes a specialized client that handles shard routing and key distribution across a Redis cluster topology.
  • Cluster Distribution - Handles request distribution and failover coordination across multiple nodes in a clustered environment.
  • Cluster Topology Management - Implements client-side sharding and gossip protocol support to route requests based on cluster topology.
  • Pub/Sub Clients - Offers a specialized communication layer for publishing and subscribing to channels using asynchronous patterns.
  • Server-Side Scripting - Provides a dedicated client for executing programmable Lua scripts directly within the data store with hash caching.
  • Sentinel Management - Provides a Sentinel client for service discovery, managing high availability and failover in replicated environments.
  • Command Pipelining - Implements command pipelining to group multiple database requests into a single network transmission to reduce latency.
  • Atomic Transaction Execution - Performs atomic transaction execution using watch and multi-exec blocks to ensure data consistency.
  • Data Streaming - phpredis handles stream-based data structures by adding, reading, claiming, and acknowledging messages within a sequential queue.
  • Read-Write Splitting - Directs write operations to the master node while balancing read-only queries across multiple replica nodes.
  • Atomic Data Store Operations - Utilizes Redis transactions and Lua scripting to perform complex, atomic operations that guarantee data consistency.
  • Primary-Replica Replication - Implements master-slave replication routing by directing writes to the primary node and reads to replica nodes.
  • Command Pipelining - Batches multiple commands into a single network request to reduce round-trip latency and increase throughput.
  • Redis Performance Tuning - Optimizes performance through command pipelining, persistent connections, and Unix domain socket support.
  • Request Retries - Implements automatic request retries with configurable backoff strategies to improve connection resilience.
  • Database High Availability - Implements Redis Sentinel and master-slave replication to provide automated failover and continuous service availability.
  • Persistent Network Connections - Establishes long-lived persistent socket connections to minimize the overhead of repeated handshakes.
  • Pub-Sub Messaging - Provides an architecture for decoupling producers and consumers using Redis publish and subscribe capabilities.
  • Sharded Pub/Sub - Implements slot-based distribution for publishing and subscribing across a cluster to ensure scalability.
  • Unix Domain Socket Support - Supports local communication via UNIX domain sockets to increase throughput and reduce latency.
  • NoSQL and Caching - Provides a feature-complete Redis client.

Historique des stars

Graphique de l'historique des stars pour predis/predisGraphique de l'historique des stars pour predis/predis

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 à Predis

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Predis.
  • redis/jedisAvatar de redis

    redis/jedis

    12,331Voir sur GitHub↗

    Jedis is a Java library for connecting to Redis servers to execute commands and manage key-value data structures. It serves as a Java client and connection manager that facilitates the storage and retrieval of high-performance data. The project provides a cluster client for distributing data and requests across multiple nodes to ensure scaling and high availability. It includes a dedicated pub-sub client for real-time messaging through channel subscriptions and a pipelining tool to increase throughput by sending multiple commands in a single network round-trip. The library covers a broad ran

    Javajavajedisredis
    Voir sur GitHub↗12,331
  • redis/lettuceAvatar de redis

    redis/lettuce

    5,756Voir sur GitHub↗

    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 redir

    Javaasynchronousaws-elasticacheazure-redis-cache
    Voir sur GitHub↗5,756
  • stackexchange/stackexchange.redisAvatar de StackExchange

    StackExchange/StackExchange.Redis

    6,169Voir sur GitHub↗

    General purpose redis client

    C#
    Voir sur GitHub↗6,169
  • luin/ioredisAvatar de luin

    luin/ioredis

    15,295Voir sur GitHub↗

    ioredis is a performance-focused Redis client for Node.js designed to execute commands and manage data connections. It provides a specialized interface for interacting with standalone servers, sharded clusters, and high-availability setups. The library distinguishes itself with native support for Redis Cluster, featuring automatic slot discovery and network address mapping, and Redis Sentinel for master node discovery and automatic failover. It also includes a dedicated Lua scripting interface that utilizes server-side caching to ensure atomic operations. The project covers a broad set of ca

    TypeScript
    Voir sur GitHub↗15,295
Voir les 30 alternatives à Predis→

Questions fréquentes

Que fait predis/predis ?

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.

Quelles sont les fonctionnalités principales de predis/predis ?

Les fonctionnalités principales de predis/predis sont : Redis, Redis Clients, Service Discovery, Distributed Sharding Architectures, Key-Value Store Clients, Cluster Clients, Cluster Distribution, Cluster Topology Management.

Quelles sont les alternatives open-source à predis/predis ?

Les alternatives open-source à predis/predis incluent : redis/jedis — Jedis is a Java library for connecting to Redis servers to execute commands and manage key-value data structures. It… redis/lettuce — Lettuce is a Redis client library for Java that provides synchronous, asynchronous, and reactive programming models… stackexchange/stackexchange.redis — General purpose redis client. luin/ioredis — ioredis is a performance-focused Redis client for Node.js designed to execute commands and manage data connections. It… redis/ioredis — ioredis is a performance-focused Redis client for Node.js applications. It provides a comprehensive interface for… hazelcast/hazelcast — Hazelcast is a distributed data platform that combines an in-memory data grid with a stream processing engine to…