Ravindra BagaleCourses & study guides English Track your progress

Amazon ElastiCache म्हणजे काय? AWS वर Redis आणि Memcached

Chai stall rush ला तयार kettle ठेवतो. ElastiCache = app साठी ते kettle: Redis/Memcached memory मध्ये hot data — प्रत्येक view ला DB नको.

या chapter मध्ये तुम्ही काय शिकाल

  • Cache vs फक्त मोठी DB
  • Redis vs Memcached
  • Patterns
  • Security, failover, cluster
  • Lab, errors, FAQ, interview

1. आधी रोजचं उदाहरण

हे का लागतं?

News homepage प्रत्येक वेळी RDS. Election ला CPU. Redis 30s cache → DB load ~90% कमी.

हे काय आहे?

Amazon ElastiCache = managed Redis (आणि AWS च्या evolving options) व Memcached. Node type, clustering, Multi-AZ; app private network वरून.

Cache-asideApp ला keyRedis hit? returnMiss → DBRedis + TTL
नेहमी TTL — immortal keys = खोटं data.

2. Redis vs Memcached

NeedPreferका
Sessions/leaderboard/locksRedisStructures + persistence
Simple object cacheMemcachedसोपं horizontal
Restart नंतर dataPersistence/replAOF/RDB + replicas
फक्त KV, कमी ops2026 मध्ये बहुतेक Redis default

3. Patterns

  • Cache-aside: miss → DB → fill.
  • Write-through: DB+cache एकत्र.
  • Session store.
  • Rate limit INCR+TTL.
  • Leaderboard ZSET.

Ravindra Bagale's Tip

Cache ≠ database. Redis गेला तरी source of truth वरून rebuild.

4. Security आणि networking

  • Private subnets; app SG only.
  • AUTH/ACL + in-transit encryption.
  • 0.0.0.0/0 कधीच नको.
  • IAM/Secrets — code मध्ये password नको.

5. Industries

  • Ecommerce: product/cart cache.
  • Gaming: leaderboards.
  • Fintech: OTP/session.
  • Media: hot metadata.
  • SaaS: per-key rate limits.

6. Mini lab: Redis cache-aside

Org block नसेल तर ap-south-1 (Mumbai). आधी budget alert.

कसं करायचं (step by step)

  1. छोटा Redis private subnet — cost लक्षात; short lab.
  2. Bastion वरून PING.
  3. SET EX 60 → GET.
  4. App language मध्ये cache-aside sketch.
  5. CloudWatch metrics.

Cleanup (billing थांबवा)

  1. Cluster delete — available असताना bill.
  2. Lab bastion काढा.

7. सामान्य errors आणि fixes

प्रत्येक row = खरी चूक. Panic करण्याआधी fix वाचा.

Error / लक्षणFix
TIMEOUTSG/NACL/route.
OOM/evictionsTTL/memory.
StampedeSoft TTL/lock.
KeyslotHash tags.
FailoverStaging test.
PII cacheShort TTL.
Cache = queueSQS/Kafka.
Client versionMatch versions.
Multi-AZ offProd on.
Bill चालूDelete cluster.

8. Troubleshooting checklist

  1. SG port.
  2. VPC path.
  3. AUTH.
  4. TLS.
  5. Evictions/CPU.

9. FAQ

प्र. vs DAX?

DAX = DynamoDB; ElastiCache = general.

प्र. Persistence?

Replicas/options — cache loss design.

प्र. Memcached?

अजून valid; Redis जास्त features.

प्र. Serverless?

Region नुसार console पाहा.

प्र. TTL?

Business freshness मोजा.

10. Interview Q&A

प्र. ElastiCache?

Managed Redis/Memcached.

प्र. Cache-aside?

Miss → DB → fill + TTL.

प्र. vs?

Redis structures; Memcached simple KV.

प्र. Secure?

Private+SG+AUTH+encrypt.

प्र. Thundering herd?

Lock/stagger/soft TTL.

प्र. कधी नको?

Strong consistency / दुर्मिळ reads.

11. Tips — English, मराठी आणि हिंदी

Ravindra Bagale's Tip (EN)

Put TTL on every key in labs and in prod unless you have a written exception.

Ravindra Bagale's Tip (MR)

Lab आणि prod मध्ये प्रत्येक key ला TTL — लिहिलेली exception सोडून.

Tip (HI)

हर key पर TTL रखो — लिखित exception छोड़कर।

घरी करून बघा

  1. Product API cache-aside.
  2. 5 bullets compare.
  3. t3.micro cost estimate.

थोडक्यात सांगायचं तर

  1. ElastiCache = managed in-memory.
  2. 2026: बहुतेक Redis.
  3. Private + AUTH + TTL.
  4. Lab clusters delete.

उजळणी, मुलाखत आणि तुलना cards

हा lesson काही मिनिटांत revise करा. Cards phone वर save करा किंवा PNG download करा. प्रत्येक card वरचा QR हा lesson उघडतो.

उजळणी card: Amazon ElastiCache म्हणजे काय?. समान row साठी RDS = waste. Managed Redis/Memcached cache. Subnet group → SG → cluster → app. Cache hit sub-ms.
उजळणी card: Amazon ElastiCache म्हणजे काय? · PNG download करा · Card page उघडा
उजळणी card: Redis vs Memcached. Locks/streams हवे असताना Memcached = migrate. Redis=rich; Memcached=simple objects. Default Redis. Sessions → Redis.
उजळणी card: Redis vs Memcached · PNG download करा · Card page उघडा
उजळणी card: Cache-aside pattern. फक्त cache write = data loss. Miss → DB → fill; write → DB + invalidate. TTL + delete on update. Update → fresh price.
उजळणी card: Cache-aside pattern · PNG download करा · Card page उघडा
उजळणी card: Cache साठी security group. 6379 world-open = breach. Private subnets; SG from app only. Source = app SG id. Internet ↛ cache.
उजळणी card: Cache साठी security group · PNG download करा · Card page उघडा
उजळणी card: Failover आणि evictions. Full cache eviction = DB outage सारखे. Multi-AZ; watch Evictions. Multi-AZ + Evictions alarm. Failover → reconnect.
उजळणी card: Failover आणि evictions · PNG download करा · Card page उघडा
तुलना: Redis (ElastiCache) vs Memcached (ElastiCache). Redis (ElastiCache): Structures, replication, snapshots. Memcached (ElastiCache): Simple object cache.
तुलना: Redis (ElastiCache) vs Memcached (ElastiCache) · PNG download करा · Card page उघडा
तुलना: Cache-aside vs Write-through. Cache-aside: Miss वर DB → cache fill. Write-through: Update वर DB+cache एकत्र.
तुलना: Cache-aside vs Write-through · PNG download करा · Card page उघडा
मुलाखत card: ElastiCache कधी?. Repeated reads + measure first. DB of record नाही. Hot product keys → cache-aside.
मुलाखत card: ElastiCache कधी? · PNG download करा · Card page उघडा
मुलाखत card: Redis की Memcached?. Default Redis; Memcached=simple. Counters/TTL → Redis. Sessions → Redis.
मुलाखत card: Redis की Memcached? · PNG download करा · Card page उघडा
मुलाखत card: Cache stampede कसे टाळाल?. अनेक miss → DB crush. TTL jitter / singleflight / warm. TTL jitter.
मुलाखत card: Cache stampede कसे टाळाल? · PNG download करा · Card page उघडा
मुलाखत card: Cache TTL कसा?. Freshness vs load; jitter. Hit ratio + stale complaints. Title 10m; cart short/none.
मुलाखत card: Cache TTL कसा? · PNG download करा · Card page उघडा

अजून cards: Ravi Sir's Cards.

सराव Tasks

या scenario बद्दल

Shivneri Schools हा जुन्नर मधला शिक्षण व्यवसाय आहे. Kavita Shinde त्यांचं IT व cloud काम पाहतात. त्यांचे पैसे INR मध्ये मोजले जातात आणि AWS resources ap-south-1 Region मध्ये चालतात. खालच्या tasks मध्ये तुम्ही या lesson मध्ये शिकलेलं वापरून त्यांची खरी कामं करता. सगळी नावं, account IDs, IP addresses व numbers सरावासाठी काल्पनिक आहेत.

0 / 16

सोपं Cache clusters

का: Redis/Memcached.

काय करायचं: ap-south-1 cache clusters.

कसं करायचं:
  1. Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
  2. aws लिहा, मग service चं नाव, मग operation (action शब्द).
  3. प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
  4. Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.

सोपं Cache cluster delete

का: Lab cost थांबवा.

काय करायचं: shivnerischool-redis delete.

कसं करायचं:
  1. Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
  2. aws लिहा, मग service चं नाव, मग operation (action शब्द).
  3. प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
  4. Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.

सोपं Subnet groups

का: VPC मध्ये cache.

काय करायचं: Cache subnet groups.

कसं करायचं:
  1. Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
  2. aws लिहा, मग service चं नाव, मग operation (action शब्द).
  3. प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
  4. Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.

सोपं Parameter groups

का: Redis params.

काय करायचं: Parameter groups.

कसं करायचं:
  1. Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
  2. aws लिहा, मग service चं नाव, मग operation (action शब्द).
  3. प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
  4. Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.

सोपं Default Redis port

का: SG ला port.

काय करायचं: Default Redis port?

कसं करायचं:
  1. Task मधले numbers लिहून घ्या.
  2. कागदावर step by step काढा.
  3. Box मध्ये फक्त final उत्तर लिहा.
  4. Check answer दाबा.

सोपं Default Memcached port

का: Redis पेक्षा वेगळे.

काय करायचं: Default Memcached port?

कसं करायचं:
  1. Task मधले numbers लिहून घ्या.
  2. कागदावर step by step काढा.
  3. Box मध्ये फक्त final उत्तर लिहा.
  4. Check answer दाबा.

मध्यम Cache reboot

का: Maintenance.

काय करायचं: shivnerischool-redis reboot.

कसं करायचं:
  1. Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
  2. aws लिहा, मग service चं नाव, मग operation (action शब्द).
  3. प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
  4. Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.

मध्यम Subnet group बनवा

का: Multi-AZ.

काय करायचं: shivnerischool-sub subnet-aaa subnet-bbb.

कसं करायचं:
  1. Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
  2. aws लिहा, मग service चं नाव, मग operation (action शब्द).
  3. प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
  4. Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.

मध्यम Node type बदला

का: Vertical scale.

काय करायचं: shivnerischool-redis → cache.t3.small apply-immediately.

कसं करायचं:
  1. Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
  2. aws लिहा, मग service चं नाव, मग operation (action शब्द).
  3. प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
  4. Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.

मध्यम Replication groups

का: Redis HA.

काय करायचं: Replication groups.

कसं करायचं:
  1. Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
  2. aws लिहा, मग service चं नाव, मग operation (action शब्द).
  3. प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
  4. Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.

मध्यम Single-node Redis

का: Lab: एक node.

काय करायचं: Single-node Redis मध्ये किती nodes?

कसं करायचं:
  1. Task मधले numbers लिहून घ्या.
  2. कागदावर step by step काढा.
  3. Box मध्ये फक्त final उत्तर लिहा.
  4. Check answer दाबा.

मध्यम Endpoint JSON

का: Host व port.

काय करायचं: Address redis.example... Port 6379.

कसं करायचं:
  1. Task मधल्या top-level keys पासून सुरू करा.
  2. Child keys 2 spaces ने indent करा (tabs नकोत).
  3. प्रत्येक property मध्ये task मधली value भरा.
  4. Check answer दाबा. Keys चा क्रम महत्त्वाचा नाही.

अवघड Redis cluster बनवा

का: Session cache.

काय करायचं: shivnerischool-redis engine redis cache.t3.micro nodes 1.

कसं करायचं:
  1. Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
  2. aws लिहा, मग service चं नाव, मग operation (action शब्द).
  3. प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
  4. Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.

अवघड Memcached cluster

का: Object cache.

काय करायचं: shivnerischool-mc memcached cache.t3.micro nodes 2.

कसं करायचं:
  1. Task वाचा आणि ते कोणत्या AWS service बद्दल आहे ते ठरवा.
  2. aws लिहा, मग service चं नाव, मग operation (action शब्द).
  3. प्रत्येक आवश्यक flag (--name) व त्यापुढे task मधली value लिहा.
  4. Flags कोणत्याही क्रमाने चालतात. Check answer दाबा.

अवघड Redis world ला मना

का: Prod: 0.0.0.0/0 नको.

काय करायचं: Deny AuthorizeSecurityGroupIngress on *.

कसं करायचं:
  1. { "Version": "2012-10-17", "Statement": [ ... ] } ने सुरू करा.
  2. प्रत्येक statement मध्ये Effect, Action व Resource लिहा.
  3. Task ला लागेल तेवढंच द्या (least privilege).
  4. Double quotes व commas नीट वापरा. Check answer दाबा.

अवघड Auth token

का: Redis AUTH.

काय करायचं: TokenLength 32, Min 16, Max 128.

कसं करायचं:
  1. Task मधल्या top-level keys पासून सुरू करा.
  2. Child keys 2 spaces ने indent करा (tabs नकोत).
  3. प्रत्येक property मध्ये task मधली value भरा.
  4. Check answer दाबा. Keys चा क्रम महत्त्वाचा नाही.