IuriiO Notebook
  • Broken Code Notebook
  • Architecture and Design
    • Architectural Decision Records
    • Trade-off Analysis
    • Data Decomposition Drivers
    • Selecting a Database Type
    • Service Granularity
    • Consumer-driven Contracts
  • Cloud
    • AWS
      • Resources
      • Compute
        • EC2
        • Batch
        • ECS & ECR
        • Elastic Beanstalk
      • Storage & Data Management
        • S3
        • Storage Gateway
        • RDS
        • DynamoDB
        • ElastiCache
        • Redshift
        • EBS
        • EFS
        • FSx
        • Snowball
        • Athena
        • Encryption and Downtime
        • Untitled
      • Security & Compliance
        • IAM
        • Web Identity Federation
        • Organizations
        • Service Catalog
        • Tags and Resource Groups
        • STS
        • KMS
        • GuardDuty
        • Compliance
        • Marketplace Security Products
        • DDOS
        • Compliance Frameworks
      • High Availability
        • Global Infrastructure
        • Disaster recovery
        • Elastic Load Balancers
        • Untitled
      • Monitoring & Reporting
        • Cost Explorer
        • CloudWatch
        • Systems Manager
        • Config
        • CloudTrail
        • Cost control
        • Untitled
      • Networking
        • Networking 101
        • Route53
        • CloudFront
        • VPC
        • DirectConnect
        • WAF
        • Shield
        • Global Accelerator
      • Deployment & Provisioning
        • Untitled
        • Untitled
      • Automation & Optimization
        • CloudFormation
          • Links
          • Github resources
          • YAML 101
          • Videos
        • OpsWorks
        • Untitled
      • Application Services
        • SQS
        • SWF
        • SNS
        • Untitled
      • Serverless
        • Lambda
        • API Gateway
        • DynamoDB
        • SAM
        • Untitled
      • Well-Architected Framework
    • Azure
      • Tools
      • Organization & Management
      • Authentication & Authorization
      • Compute
      • Networking
      • Storage
      • Databases
      • Security
      • Privacy, Compliance & Trust
      • Cost Management
  • Containers & Services
    • Docker
      • Useful Links
      • Containers
      • Images
      • Dockerfile
      • System
      • Compose
      • Swarm
      • Docker & NodeJS
    • Kubernetes
      • Useful Links
      • Introduction
      • Getting started
      • Exposing containers
      • Kubernetes Management Techniques
        • Declarative YAML
      • Labels and Annotations
      • Storage in Kubernetes
      • Ingress Controller
      • CRD's and The Operator Pattern
      • Kubernetes Dashboard
      • Kubectl Namespaces and Context
  • Frontend
    • Resources
    • Design
      • Search experience
Powered by GitBook
On this page
  • Monitoring
  • CPU utilizations
  • Swap usage
  • Evictions
  • Concurrent connections

Was this helpful?

  1. Cloud
  2. AWS
  3. Storage & Data Management

ElastiCache

Amazon ElastiCache is a web service that makes it easy to deploy, operate and scale an in-memory cache in the cloud. The service improves the performance of web applications by allowing you to retrieve information from fast, managed, in-memory caches, instead of relying entirely on slower disk-based databases.

ElastiCache supports two open-source in-memory caching engines:

  • Memcached

  • Redis

Monitoring

When it comes to monitoring caching engines, there are 4 important metrics to look at:

  • CPU utilization

  • Swap usage

  • Evictions

  • Concurrent connections

CPU utilizations

  • Memcached

    • Multi-threaded

    • Can handle loads up to 90%. If it exceeds 90%, add more nodes to the cluster

  • Redis

    • Not multi-threaded. To determine the point in which to scale, take 90% and divide by the number of cores.

Swap usage

  • Memcached

    • Should be around 0 most of the time and should not exceed 50 Mb.

    • If this exceeds 50 Mb, you should increase the memcached_connections_parameter

  • Redis

    • No swap usage metrics, instead use reserved_memory

Evictions

  • Memcached

    • There is no recommended setting. Choose a threshold based off your application. Either scale up (increase the memory of the existing nodes) or scale out (add more nodes).

  • Redis

    • There is no recommended setting, choose a threshold based off your application

    • Only scale out (add read replicas)

Concurrent connections

  • Memcached and Redis

    • There is no recommended setting

    • If there is a spike in number of concurrent connections, this can either mean a large traffic spike or your application is not releasing connections as it should be.

PreviousDynamoDBNextRedshift

Last updated 5 years ago

Was this helpful?