Back to Browse

Memcached | MemC3 | Caching

4 views
May 19, 2026
7:51

كل مرة الـ User يعمل Refresh أو يفتح نفس الصفحة… هل منطقي نروح نسأل الـ Database من الأول؟ هنا بييجي دور الـ Caching واحد من أسرع وأشهر الحلول هو Memcached فكرته ببساطة: بدل ما التطبيق يجيب نفس البيانات من الـ Database كل مرة والعملية دي ممكن تكون بطيئة ومكلفة بنخزن البيانات مؤقتا في الـ RAM، وبالتالي الوصول ليها بيكون أسرع بفرق ضخم. الفيديو بيشرح: • يعني إيه Caching وليه مهم • إيه الفرق بين RAM و Disk في السرعة • إزاي Memcached بيشتغل داخليًا • مفهوم الـ Key-Value Storage • الفرق بين Cache Hit و Cache Miss • ليه الـ Caching بيقلل الضغط على الـ Database ويحسن الـ Scalability • إمتى تستخدم Memcached وإمتى لأ أمثلة حقيقية لاستخدامه تخزين بيانات الـ Users المتكررة await client.set( 'user:15', JSON.stringify(user), { expires: 60 } ); بدل ما كل Request يعمل Query على الـ Database، البيانات هتكون جاهزة في الـ RAM خلال milliseconds. تخزين نتائج Queries الثقيلة SELECT * FROM orders WHERE status = 'completed' ORDER BY created_at DESC; لو الـ Query دي بتتنفذ آلاف المرات، نقدر نخزن النتيجة في Memcached بدل إعادة تنفيذها كل مرة. تخزين نتائج APIs الخارجية const weather = await fetchWeather(); await client.set( 'weather:cairo', JSON.stringify(weather), { expires: 300 } ); وده بيقلل عدد الـ API Calls ويحسن سرعة الاستجابة. مثال عملي كامل import memjs from 'memjs'; const client = memjs.Client.create(); async function getProducts() { const cached = await client.get('products'); if (cached.value) { console.log('Cache Hit'); return JSON.parse( cached.value.toString() ); } console.log('Cache Miss'); const products = [ { id: 1, name: 'Laptop' }, { id: 2, name: 'Phone' } ]; await client.set( 'products', JSON.stringify(products), { expires: 60 } ); return products; } getProducts().then(console.log); أول Request هيجيب البيانات من الـ Database لكن أي Request بعده هيكون أسرع لأن البيانات بقت موجودة في الـ Cache وده بالضبط السبب اللي يخلي شركات كبيرة تعتمد بشكل ضخم على الـ Caching لتحسين الأداء وتقليل التكلفة

Download

0 formats

No download links available.

Memcached | MemC3 | Caching | NatokHD