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 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.
Testimonials (2)
David was able to adapt the content of the training to our level and our internal organization (infra vs dev). We were also able to address the specific case of our infrastructure Redis and target points for improvement. I also liked seeing a dev part, which allows us to then make the link with the infrastructure and how it works. David is a good teacher and the many diagrams help a lot to see things clearly and understand quickly.
Aurore - Capgemini Consulting
Course - Redis for High Availability and Performance Training Course
Machine Translated
It gives me an insight on Redis, and also guide me to the right path if I want to know more about Redis