Get in Touch

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

Requirements

Participants must possess foundational skills in system administration tasks using the Linux command line. Certain modules require programming or scripting capabilities; when registering, please specify which programming languages you are proficient in. If no prior programming experience is noted, the training will focus exclusively on issuing commands via redis-cli.

 21 Hours

Number of participants


Price per participant

Testimonials (1)

Upcoming Courses

Related Categories