ioredis - A robust, performance-focused and full-featured Redis client for Node and io.js.

  •        110

A delightful, performance-focused Redis client for Node and io.js

https://github.com/luin/ioredis

Dependencies:

bluebird : ^3.3.4
cluster-key-slot : ^1.0.6
debug : ^2.2.0
denque : ^1.1.0
flexbuffer : 0.0.6
lodash.assign : ^4.2.0
lodash.bind : ^4.2.1
lodash.clone : ^4.5.0
lodash.clonedeep : ^4.5.0
lodash.defaults : ^4.2.0
lodash.difference : ^4.5.0
lodash.flatten : ^4.4.0
lodash.foreach : ^4.5.0
lodash.isempty : ^4.4.0
lodash.keys : ^4.2.0
lodash.noop : ^3.0.1
lodash.partial : ^4.2.1
lodash.pick : ^4.4.0
lodash.sample : ^4.2.1
lodash.shuffle : ^4.2.0
lodash.values : ^4.3.0
redis-commands : ^1.2.0
redis-parser : ^2.4.0

Tags
Implementation
License
Platform

   




Related Projects

Go Redis - Type-safe Redis client for Golang

  •    Go

Redis client for Golang. It supports Publish /Subscribe. Transactions. Pipeline and TxPipeline. Scripting. Timeouts. Redis Sentinel. Redis Cluster. Cluster of Redis Servers without using cluster mode and Redis Sentinel. Ring. Instrumentation. Cache friendly. Rate limiting. Distributed Locks.

Redisson - Redis based In-Memory Data Grid for Java

  •    Java

Redisson - distributed Java objects and services (Set, Multimap, SortedSet, Map, List, Queue, BlockingQueue, Deque, BlockingDeque, Semaphore, Lock, AtomicLong, Map Reduce, Publish / Subscribe, Bloom filter, Spring Cache, Executor service, Tomcat Session Manager, Scheduler service, JCache API) on top of Redis server. Rich Redis client.

lettuce-core - Advanced Java Redis client for thread-safe sync, async, and reactive usage

  •    Java

Advanced and thread-safe Java Redis client for synchronous, asynchronous, and reactive usage. Supports Cluster, Sentinel, Pipelining, Auto-Reconnect, Codecs and much more.

corvus - A fast and lightweight Redis Cluster Proxy for Redis 3.0

  •    C

Corvus is a fast and lightweight redis cluster proxy for redis 3.0 with cluster mode enabled.Most redis client implementations don't support redis cluster. We have a lot of services relying on redis, which are written in Python, Java, Go, Nodejs etc. It's hard to provide redis client libraries for multiple languages without breaking compatibilities. We used twemproxy before, but it relies on sentinel for high availabity, it also requires restarting to add or remove backend redis instances, which causes service interruption. And twemproxy is single threaded, we have to deploy multiple twemproxy instances for large number of clients, which causes the sa headaches.

predis - Flexible and feature-complete Redis client for PHP and HHVM

  •    PHP

Flexible and feature-complete Redis client for PHP >= 5.3 and HHVM >= 2.3.0.Predis does not require any additional C extension by default, but it can be optionally paired with phpiredis to lower the overhead of the serialization and parsing of the Redis RESP Protocol. For an experimental asynchronous implementation of the client you can refer to Predis\Async.


aredis - redis client for Python asyncio (has support for redis server, sentinel and cluster)

  •    Python

aredis requires a running Redis server.Please run test script in benchmarks dir to confirm the benchmark.

redis-cluster - HA Redis Cluster with Sentinel by Docker Compose

  •    Shell

Using Docker Compose to setup a redis cluster with sentinel.

node-redlock - A node.js redlock implementation for distributed, highly-available redis locks

  •    Javascript

This is a node.js implementation of the redlock algorithm for distributed redis locks. It provides strong guarantees in both single-redis and multi-redis environments, and provides fault tolerance through use of multiple independent redis instances or clusters. Please make sure to use a client with built-in cluster support, such as ioredis.

rediscala - Non-blocking, Reactive Redis driver for Scala (with Sentinel support)

  •    Scala

A Redis client for Scala (2.10+) and (AKKA 2.2+) with non-blocking and asynchronous I/O operations.Reactive : Redis requests/replies are wrapped in Futures.

redis-go-cluster - redis cluster client implementation in Go

  •    Go

redis-go-cluster is a golang implementation of redis client based on Gary Burd's Redigo. It caches slot info at local and updates it automatically when cluster change. The client manages a connection pool for each node, uses goroutine to execute as concurrently as possible, which leads to its high efficiency and low lantency. redis-go-cluster has compatible interface to Redigo, which uses a print-like API for all redis commands. When executing a command, it need a key to hash to a slot, then find the corresponding redis node. Do method will choose first argument in args as the key, so commands which are independent from keys are not supported, such as SYNC, BGSAVE, RANDOMKEY, etc.

aioredis - asyncio (PEP 3156) Redis support

  •    Python

asyncio (PEP 3156) Redis client library.hiredis is preferred requirement. Pure-python protocol parser is implemented as well and can be used through parser parameter.

redis-py-cluster - Python cluster client for the official redis cluster. Redis 3.0+.

  •    Python

This client provides a client for redis cluster that was added in redis 3.0. This Readme contains a reduced version of the full documentation.

Cm_Cache_Backend_Redis - A Zend_Cache backend for Redis with full support for tags (works great with Magento)

  •    PHP

There are two supported methods of achieving High Availability and Load Balancing with Cm_Cache_Backend_Redis.You may achieve high availability and load balancing using Redis Sentinel. To enable use of Redis Sentinel the server specified should be a comma-separated list of Sentinel servers and the sentinel_master option should be specified to indicate the name of the sentinel master set (e.g. 'mymaster'). If using sentinel_master you may also specify load_from_slaves in which case a random slave will be chosen for performing reads in order to load balance across multiple Redis instances. Using the value '1' indicates to only load from slaves and '2' to include the master in the random read slave selection.

redis-rb - A Ruby client library for Redis

  •    Ruby

A Ruby client library for Redis.A Ruby client that tries to match Redis' API one-to-one, while still providing an idiomatic interface. It features thread-safety, client-side sharding, pipelining, and an obsession for performance.

docker-redis-cluster - Dockerfile for Redis Cluster (redis 3.0+)

  •    Makefile

Docker image with redis built and installed from source. The main usage for this container is to test redis cluster code. For example in https://github.com/Grokzen/redis-py-cluster repo.

phpredis - A PHP extension for Redis

  •    C

The phpredis extension provides an API for communicating with the Redis key-value store. It is released under the PHP License, version 3.01. This code has been developed and maintained by Owlient from November 2009 to March 2011.You can send comments, patches, questions here on github, to n.favrefelix@gmail.com (@yowgi), to michael.grunder@gmail.com (@grumi78) or to p.yatsukhnenko@gmail.com (@yatsukhnenko).

redis-windows - Vagrant redis configuration and the binary releases of MS Open Tech redis port of windows

  •    Shell

This project contains the binary releases of MS Open Tech redis port of windows as well as a vagrant configuration for redis letting you run the native version of Redis in a Virtual Box VM.Whilst it's recommended to use Redis on Linux in production, it is often useful for developers on Windows platforms to have their own local version of redis running to develop with.

redis-node-client - Redis client for Node.js (abandoned)

  •    Javascript

This version requires at least Node.js v0.1.90 and Redis 1.3.8.Tested with Node.js v0.1.95 and v0.1.96 and Redis 2.1.1 (the current unstable).

redix - Fast, pipelined, resilient Redis driver for Elixir

  •    Elixir

Superfast, pipelined, resilient Redis client for Elixir.Redix is a Redis client written in pure Elixir with focus on speed, correctness and resiliency (that is, being able to automatically reconnect to Redis in case of network errors).