Skip to content

Optimization⚓︎

AWS Elasticache⚓︎

Overview⚓︎

AWS Elasticache is a powerful service designed to enhance latency and throughput for read-heavy applications or compute-intensive workloads. Here are key considerations and a comparison between Redis and Memcached.

Use Cases⚓︎

  • Read-Heavy Applications: Improves performance for applications with a significant focus on read operations.
  • Session Storage: Ideal for storing sessions of instances, enhancing the overall user experience.
  • Database Performance Improvement: Can boost the performance of databases, though integrating it involves substantial changes in application code.

Key Points⚓︎

  • EC2 Instance Provisioning: Requires provisioning of EC2 instances as part of the setup.
  • IAM Authentication: Does not support IAM authentication.

Redis vs. Memcached⚓︎

Redis⚓︎

  • Backup and Restore: Supports backup and restore features.
  • Read Replicas: Enables scaling reads and provides high availability.
  • Data Durability: Achieves data durability using AOF persistence.
  • Multi-AZ with Failover: Supports multi-AZ configurations with automatic failover.
  • Sorted Sets: Effective for implementing leaderboards.
  • Security: Offers enhanced security with Redis Auth tokens for SSL/Inflight encryption.
  • Performance: Fast in-memory data store with sub-millisecond latency, HIPAA compliance, replication, high availability, and cluster sharding.

Memcached⚓︎

  • Partitioning of Data: Allows multinode partitioning of data for sharing.
  • Replication (HA): Does not support replication for high availability.
  • Persistence: Does not provide persistence; data is non-persistent.
  • Backup/Restore: Lacks backup and restore features.
  • Multithreaded: Supports multithreading.
  • Authentication: Supports SASL authentication.

AWS Elastic Disaster Recovery⚓︎

Overview⚓︎

AWS Elastic Disaster Recovery is a service designed for transferring on-premises/cloud environments to AWS or recovering from one AWS region to another. It offers different recovery models with varying recovery point objectives (RPO) and recovery time objectives (RTO).

Recovery Models⚓︎

Active/Passive (Slower Recovery)⚓︎

  • Backup and Restore:

    • RPO/RTO: Hours
    • Priority: Lower
    • Process: Provision all resources after backup and restore backups after.
    • Cost: $
  • Pilot Light:

    • RPO/RTO: 10s of minutes
    • Priority: Data live
    • Process: Services are idle; provision some resources and scale.
    • Cost: $$
  • Warm Standby:

    • RPO/RTO: Minutes
    • Priority: Business-critical
    • Process: Always running but smaller; scale AWS resources after.
    • Cost: $$$

Active/Active (Faster Recovery)⚓︎

  • Multisite:
    • RPO/RTO: Real-time
    • Priority: Zero downtime
    • Process: Near-zero loss of data; mission-critical services.
    • Cost: $$$$

AWS Compute Optimizer⚓︎

Overview⚓︎

AWS Compute Optimizer is a service leveraging machine learning to analyze historical utilization metrics and recommend optimal AWS Compute resources, including Lambda, EC2, and EBS. It aims to reduce costs and enhance performance.

Key Features⚓︎

  • Recommends optimal EC2 types, including those in Autoscaling groups, based on utilization.
  • Utilizes machine learning to analyze historical utilization metrics.

AWS Trusted Advisor⚓︎

Overview⚓︎

AWS Trusted Advisor provides a high-level assessment of AWS accounts and offers recommendations across various metrics to optimize cost, performance, security, fault tolerance, and service limits.

Metrics and Recommendations⚓︎

  • Cost Optimization:

    • Identifies low utilization EC2 instances, ideal load balancers, and underutilized EBS volumes.
    • Recommends optimization of Reserved Instances and Savings Plans.
  • Performance:

    • Highlights high-utilization EC2 instances and provides CloudFront CDN optimizations.
    • Recommends EC2 to EBS throughput optimizations and Alias records.
  • Security:

    • Assesses MFA status on the Root Account, IAM Key rotation, and exposed access keys.
    • Provides recommendations on S3 permissions for public access and Security Groups with unrestricted ports.
  • Fault Tolerance:

    • Checks EBS snapshot age, AZ load balancing, ASG Multi-AZ, RDS Multi-AZ, and ELB configuration.
  • Service Limits:

    • Monitors reserved instances 30 days before/after expiration.

Additional Features (Business and Enterprise Plans)⚓︎

  • Enables CloudWatch Alarms when reaching limits.
  • Provides programmatic access through the AWS Support API.

AWS Cost Explorer⚓︎

Overview⚓︎

AWS Cost Explorer is a service that helps identify under-utilized EC2 instances, allowing users to downsize instances within the same family. It also provides insights into the potential impact on the AWS bill, considering Reserved Instances and Savings Plans.

Features⚓︎

  • Visualizes, understands, and manages AWS costs and usage over time.
  • Creates custom reports for cost and usage data analysis.
  • Analyzes data at different granularities: total costs, monthly, hourly, and resource level.

Cost Optimization⚓︎

  • Assists in choosing an optimal Savings Plan to reduce overall costs.
  • Forecasts usage up to 12 months based on previous usage patterns.

AWS Well-Architected Framework/Tool⚓︎

Overview⚓︎

The AWS Well-Architected Framework is a set of best practices to ensure the reliability, security, performance efficiency, and cost optimization of workloads in the AWS Cloud. The Well-Architected Tool scans workloads against these criteria.

Pillars⚓︎

  • Operational Excellence

    • Run/monitor systems and assets to increase business value through risk assessment and mitigation.
  • Security

    • Protect systems to increase business value through risk assessment and mitigation.
  • Reliability

    • Recover, dynamically allocate, and mitigate despite misconfigurations or problems.
  • Performance Efficiency

    • Meet system requirements and maintain efficiency through changes.
  • Cost Optimization

    • Deliver at the lowest price point.
  • Sustainability

    • Minimize environmental impact.

Tool Features⚓︎

  • Scans workloads against the pillars of the Well-Architected Framework.
  • Provides recommendations for improvement.