Redis

../../../_images/redis.png

Redis is an advanced key-value store. It is often referred to as a data structure server since keys can contain strings, hashes, lists, sets and sorted sets.

You can run atomic operations on these types, like appending to a string; incrementing the value in a hash; pushing to a list; computing set intersection, union and difference; or getting the member with highest ranking in a sorted set.

In order to achieve its outstanding performance, Redis works with an in-memory dataset. Depending on your use case, you can persist it either by dumping the dataset to disk every once in a while, or by appending each command to a log.

Redis also supports trivial-to-setup master-slave replication, with very fast non-blocking first synchronization, auto-reconnection on net split and so forth.

Other features include Transactions, Pub/Sub, Lua scripting, Keys with a limited time-to-live, and configuration settings to make Redis behave like a cache.

You can use Redis from most programming languages also.

Highlights

  • Low latency

  • High availability

  • Geospatial, caching, sessions, analytics

Quickstart

  1. Start an instance with 1-Click, or optionally using your cloud provider’s web/console

  2. Have just a little patience: it does take a couple of minutes for all the background services to start up in your instance. If you get connection refused or site error messages - just wait a moment

  3. SSH into your instance and then verify your redis service:

redis-cli cluster nodes

Monitoring

We are a Grafana shop and have a Redis exporter for Redis. You may import the dashboard from 12776.

Scaling

Our Redis is cluster-enabled by default. You may instantiate more nodes, and to add each to the cluster from the original node:

$ redis-cli --pass <your password> --cluster add-node <new hostname>:6379 localhost:6379
$ redis-cli --pass <your password> --cluster reshard 127.0.0.1:6379

See also

Our Redis Software

RPM Packages