التخزين المؤقت باستخدام Amazon ElastiCache وDAX
تعلّم كيف يقلل التخزين المؤقت في الذاكرة زمن الاستجابة وحِمل قاعدة البيانات لوظائف Lambda باستخدام ElastiCache (Redis) وDynamoDB Accelerator (DAX).
التخزين المؤقت باستخدام Amazon ElastiCache وDAX درس مجاني في Serverless AWS Lambda Development على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Serverless AWS Lambda Development، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Serverless AWS Lambda Development 4 دروس في المجموع.
بعض أجزاء هذا الدرس لم تُترجم بعد وتظهر باللغة الإنجليزية.
Why Cache?
Reading from a database on every invocation is slow and expensive. A cache keeps hot data in memory so repeated reads are near-instant.
Two AWS Cache Options
Two managed caches pair well with Lambda:
- ElastiCache (Redis or Memcached) for general key-value caching.
- DAX, a cache built specifically for DynamoDB.
Cache-Aside Pattern
The most common pattern: check the cache first, fall back to the database on a miss, then store the result for next time.
def get_user(cache, db, uid):
cached = cache.get(uid)
if cached is not None:
return cached
value = db.load(uid)
cache.set(uid, value, ttl=300)
return valueSetting a TTL
A time to live expires stale entries automatically. Short TTLs keep data fresh; long TTLs maximize hit rate. Choose based on how often data changes.
DAX in One Line
DAX is a write-through cache for DynamoDB. You point the DynamoDB client at the DAX endpoint and reads transparently use the cache.
import amazondax
client = amazondax.AmazonDaxClient(endpoint_url='dax://my-cluster')
resp = client.get_item(TableName='users', Key={'id': {'S': uid}})Caches Live in a VPC
ElastiCache and DAX run inside a VPC. Your Lambda must be VPC-attached with the right security group to reach the cache.
Reuse Connections
Create the cache client outside the handler so it persists across warm invocations, avoiding a new connection on every call.
cache = connect_to_redis() # module scope, reused
def handler(event, context):
return cache.get(event['key'])Invalidate on Write
When data changes, update or delete the cache entry so readers do not see stale values. Write-through and write-around are two strategies.
Memcached vs Redis
Memcached is simple and multi-threaded; Redis adds data structures, persistence, and replication. Pick Redis when you need richer features.
When Not to Cache
Caching adds complexity. Skip it for rarely read data or data that must always be perfectly current, where staleness is unacceptable.
Measure the Hit Rate
Track the cache hit ratio in CloudWatch. A low ratio means the cache is not helping and your TTL or keys may need tuning.
Quick Check
Test your caching knowledge.
Recap
You learned to cut latency and DB load with ElastiCache and DAX using the cache-aside pattern, TTLs, connection reuse, invalidation, and hit-rate monitoring.
تعلم Serverless AWS Lambda Development مع معلم ذكاء اصطناعي — مجانًا
اكتب وقم بتشغيل أكوادك الفعلية في المتصفح، واحصل على مساعدة فورية من معلم ذكاء اصطناعي متاح 24/7، واستمر من حيث توقفت على الويب أو في التطبيق.
- الدورات
- 12
- الدروس
- 48
الأسئلة الشائعة
هل درس «التخزين المؤقت باستخدام Amazon ElastiCache وDAX» مجاني؟
نعم — نص درس «التخزين المؤقت باستخدام Amazon ElastiCache وDAX» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Serverless AWS Lambda Development، انتقل إلى CoddyKit PRO. تتضمن دورة Serverless AWS Lambda Development 4 دروس في المجموع.
ماذا ستتعلم في «التخزين المؤقت باستخدام Amazon ElastiCache وDAX»؟
تعلّم كيف يقلل التخزين المؤقت في الذاكرة زمن الاستجابة وحِمل قاعدة البيانات لوظائف Lambda باستخدام ElastiCache (Redis) وDynamoDB Accelerator (DAX). تتمرن على Serverless AWS Lambda Development مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Serverless AWS Lambda Development؟
لا تُشترط خبرة سابقة. Serverless AWS Lambda Development على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.
كم من الوقت يستغرق درس «التخزين المؤقت باستخدام Amazon ElastiCache وDAX»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Serverless AWS Lambda Development هذا؟
نعم. كل درس في Serverless AWS Lambda Development يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- التكامل مع DynamoDB
- S3 لتخزين الملفات والأحداث
- اختيار مخزن البيانات المناسب
- التخزين المؤقت باستخدام Amazon ElastiCache وDAX