Course Code: redis-high-availability
Duration: 21 hours
Prerequisites:

Participants should be comfortable with basic system administration tasks using linux command line. Some topics require programming or scripting skills. When booking, please list the programming languages that you are familiar with. If there are none, we'll just issue redis commands from redis-cli.

Overview:

Redis is an open source (BSD licensed), in-memory data structure store, used as database, cache and message broker.

Course Outline:

Module 1: Initial setup

  • Redis Releases
  • Installation
  • Configuration
  • Security model
  • Starting Redis during boot
  • Security hardening applied by common Linux distributions
  • Client libraries and language bindings

Module 2: Data model

  • Primitive data types and commands to manipulate them
  • Typical use cases for each data type
  • Common naming conventions for Redis keys
  • "Redis is mostly single-threaded" - what it means in practice
  • Redis wire protocol
  • What to do if your client library does not know about some useful command
  • Why some commands are deliberately unavailable in some client libraries
  • How to adjust your mindset from the one of a relational database designer
  • General tips on data organization
  • Expiration
  • Pub/Sub
  • Transactions & Lua scripts
  • External modules
  • General tips on data consistency

Module 3: Performance tips

  • Benchmarking Redis
  • Commands to avoid
  • Debugging latency problems
  • Problems with big DEL requests - what to use instead
  • Pipelining
  • Mass insertion
  • Debugging memory overuse
  • Memory optimization tips

Module 4: Operations

  • Available persistence mechanisms
  • Precautions to avoid SSD wearout
  • Backup and restore
  • Tools for exploring database contents
  • Tools for dump analysis
  • Tuning durability vs performance
  • Switching between RDB and AOF
  • Use cases for diskless Redis
  • OS-level tunables relevant for Redis
  • Monitoring Redis performance

Module 5: More than one Redis

  • Starting multiple instances of Redis on one server
  • Application-level partitioning
  • Master-slave replication
  • High availability using Redis Sentinel
  • Redis Cluster
  • Making Sentinel and Cluster work across NAT
  • Making consistent backups

Module 6: High Availability

  • Install and Setup multi-Redis servers
  • Standalone server with multiple instances
  • Master/slave replication
  • Redis HA cluster with Sentinel
  • Redis sharding cluster
  • Combination of Redis replication (with Sentinel) + Sharding capability
  • Monitoring, backup/restore and performance tuning for the setup
Sites Published:

United Arab Emirates - Redis for High Availability and Performance Training Course

Qatar - Redis for High Availability and Performance Training Course

Egypt - Redis for High Availability and Performance Training Course

Saudi Arabia - Redis for High Availability and Performance Training Course

South Africa - Redis for High Availability and Performance Training Course

Brasil - Redis for High Availability and Performance Training Course

Canada - Redis for High Availability and Performance Training Course

中国 - Redis for High Availability and Performance Training Course

香港 - Redis for High Availability and Performance Training Course

澳門 - Redis for High Availability and Performance Training Course

台灣 - Redis for High Availability and Performance Training Course

USA - Redis for High Availability and Performance Training Course

Österreich - Redis for High Availability and Performance Training Course

Schweiz - Redis for High Availability and Performance Training Course

Deutschland - Redis for High Availability and Performance Training Course

Czech Republic - Redis for High Availability and Performance Training Course

Denmark - Redis for High Availability and Performance Training Course

Estonia - Redis for High Availability and Performance Training Course

Finland - Redis for High Availability and Performance Training Course

Greece - Redis for High Availability and Performance Training Course

Magyarország - Redis for High Availability and Performance Training Course

Ireland - Redis for High Availability and Performance Training Course

Luxembourg - Redis for High Availability and Performance Training Course

Latvia - Redis for High Availability and Performance Training Course

España - Redis for High Availability and Performance Training Course

Italia - Redis for High Availability and Performance Training Course

Lithuania - Redis for High Availability and Performance Training Course

Nederland - Redis for High Availability and Performance Training Course

Norway - Redis for High Availability and Performance Training Course

Portugal - Redis for High Availability and Performance Training Course

România - Redis for High Availability and Performance Training Course

Sverige - Redis for High Availability and Performance Training Course

Türkiye - Redis for High Availability and Performance Training Course

Malta - Redis for High Availability and Performance Training Course

Belgique - Redis for High Availability and Performance Training Course

France - Redis for High Availability and Performance Training Course

日本 - Redis for High Availability and Performance Training Course

Australia - Redis for High Availability and Performance Training Course

Malaysia - Redis for High Availability and Performance Training Course

New Zealand - Redis for High Availability and Performance Training Course

Philippines - Redis for High Availability and Performance Training Course

Singapore - Redis for High Availability and Performance Training Course

Thailand - Redis for High Availability and Performance Training Course

Vietnam - Redis for High Availability and Performance Training Course

India - Redis for High Availability and Performance Training Course

Argentina - Redis for High Availability and Performance Training Course

Chile - Redis for High Availability and Performance Training Course

Costa Rica - Redis for High Availability and Performance Training Course

Ecuador - Redis for High Availability and Performance Training Course

Guatemala - Redis for High Availability and Performance Training Course

Colombia - Redis for High Availability and Performance Training Course

México - Redis for High Availability and Performance Training Course

Panama - Redis for High Availability and Performance Training Course

Peru - Redis for High Availability and Performance Training Course

Uruguay - Redis for High Availability and Performance Training Course

Venezuela - Redis for High Availability and Performance Training Course

Polska - Redis for High Availability and Performance Training Course

United Kingdom - Redis for High Availability and Performance Training Course

South Korea - Redis for High Availability and Performance Training Course

Pakistan - Redis for High Availability and Performance Training Course

Sri Lanka - Redis for High Availability and Performance Training Course

Bulgaria - Redis for High Availability and Performance Training Course

Bolivia - Redis for High Availability and Performance Training Course

Indonesia - Redis for High Availability and Performance Training Course

Kazakhstan - Redis for High Availability and Performance Training Course

Moldova - Redis for High Availability and Performance Training Course

Morocco - Redis for High Availability and Performance Training Course

Tunisia - Redis for High Availability and Performance Training Course

Kuwait - Redis for High Availability and Performance Training Course

Oman - Redis for High Availability and Performance Training Course

Slovakia - Redis for High Availability and Performance Training Course

Kenya - Redis for High Availability and Performance Training Course

Nigeria - Redis for High Availability and Performance Training Course

Botswana - Redis for High Availability and Performance Training Course

Slovenia - Redis for High Availability and Performance Training Course

Croatia - Redis for High Availability and Performance Training Course

Serbia - Redis for High Availability and Performance Training Course

Bhutan - Redis for High Availability and Performance Training Course

Nepal - Redis for High Availability and Performance Training Course

Uzbekistan - Redis for High Availability and Performance Training Course