Get in Touch

Course Outline

Module 1: Initial Setup

  • Overview of Redis releases
  • Installation procedures
  • Configuration management
  • Security framework
  • Automating Redis startup during boot
  • Security hardening practices implemented by common Linux distributions
  • Client libraries and language bindings

Module 2: Data Model

  • Primitive data types and associated manipulation commands
  • Typical use cases for each data type
  • Standard naming conventions for Redis keys
  • Understanding "Redis is mostly single-threaded" in practical applications
  • Deep dive into the Redis wire protocol
  • Handling client libraries that lack support for specific useful commands
  • Reasons behind the intentional unavailability of certain commands in client libraries
  • Shifting your mindset from relational database design to Redis paradigms
  • General guidelines for organizing data
  • Managing key expiration
  • Publish/Subscribe (Pub/Sub) patterns
  • Transactions and Lua scripting
  • Utilizing external modules
  • Best practices for maintaining data consistency

Module 3: Performance Optimization

  • Benchmarking Redis performance
  • Identifying commands to avoid
  • Troubleshooting latency issues
  • Addressing performance degradation caused by large DEL requests and identifying alternatives
  • Implementing pipelining
  • Strategies for mass data insertion
  • Debugging excessive memory usage
  • Practical tips for memory optimization

Module 4: Operations

  • Overview of available persistence mechanisms
  • Precautions to prevent SSD wear-out
  • Backup and restore procedures
  • Tools for exploring database contents
  • Tools for analyzing data dumps
  • Balancing durability against performance
  • Switching between RDB and AOF formats
  • Use cases for diskless Redis configurations
  • OS-level tunables relevant to Redis performance
  • Monitoring Redis performance metrics

Module 5: Managing Multiple Redis Instances

  • Launching multiple Redis instances on a single server
  • Application-level data partitioning
  • Master-slave replication
  • Achieving high availability via Redis Sentinel
  • Implementing Redis Cluster
  • Configuring Sentinel and Cluster to operate across NAT environments
  • Establishing consistent backup routines

Module 6: High Availability

  • Installing and setting up multi-Redis server environments
  • Configuring standalone servers with multiple instances
  • Master/slave replication dynamics
  • Building Redis High Availability clusters with Sentinel
  • Implementing Redis sharding clusters
  • Combining Redis replication (with Sentinel) and sharding capabilities
  • Monitoring, backing up, restoring, and tuning performance for these complex setups

Requirements

Participants are expected to be proficient in basic system administration tasks via the Linux command line. Certain modules may require programming or scripting capabilities; when making your booking, please specify which programming languages you are familiar with. If no prior programming experience is listed, the training will focus on issuing Redis commands directly via the redis-cli tool.

 21 Hours

Number of participants


Price per participant

Testimonials (1)

Upcoming Courses

Related Categories