بيان حقوق الطبع والنشر: يمكنك إعادة الطباعة حسب الرغبة، عند إعادة الطباعة، يرجى التأكد من الإشارة إلى المصدر الأصلي ومعلومات المؤلف للمقالة وبيان حقوق الطبع والنشر هذا في شكل ارتباط تشعبي.
http://www.chedong.com/blog/archives/001431.html
حاول:
تم تمكين خيار الضغط MEMCACHE_COMPRESSED في وظيفة PHPmemcache_set()، ويمكن لـ memcache_get() إلغاء ضغط كائن ذاكرة التخزين المؤقت المضغوط تلقائيًا أثناء عمليات القراءة اللاحقة.
تأثير:
بعد الاختبار، بالنسبة للتطبيق الحالي لـ Blog Bus، بعد تمكين الضغط، تضاعف تقريبًا عدد الكائنات المخزنة بنفس السعة (2G)، وزاد معدل دخول ذاكرة التخزين المؤقت من حوالي 50% إلى حوالي 60%. لا يزال الاستثمار في الأجهزة ضروريًا لزيادة معدل الدخول بعد إضافة ضعفي الذاكرة، تمت زيادة معدل الوصول إلى ذاكرة التخزين المؤقت أخيرًا إلى 90%
.
يعتمد ما إذا كان من المفيد زيادة الأداء من 60% إلى 90% أو من 90% إلى 95% على ما إذا كان تحسين الأداء بعد الضربة جديرًا بالاهتمام؛
الفرضية 1: MemCached ممتلئة، استخدم أداة memcached للتحقق من إحصائيات السعة memcached لمعرفة ما إذا كان memcached ممتلئًا أم لا. إذا لم تكن مساحة MemCached ممتلئة أثناء تشغيلها بالكامل، فلا معنى لتمكين الضغط. علاوة على ذلك: إذا وجدت أن MemCached ليست ممتلئة، فمن الأفضل تقليل سعة MemCached المقابلة لتحرير المزيد من الذاكرة للآخرين. الخدمات إلى ذاكرة التخزين المؤقت؛
الفرضية 2: نسبة الضغط قد تكون البيانات المخزنة مؤقتًا أكبر من بضع مئات من البايتات. إذا كانت جميع أزواج القيمة الرئيسية أصغر من 100 بايت، فقد يؤدي الضغط في الواقع إلى التوسع. بما أن حجم كائنات ذاكرة التخزين المؤقت مخزنة في كتل ذات حجم ثابت في Memcached، فإن الحد الأدنى للحجم هو 88 بايت. لذلك، فإن الضغط والتوسيع الناجم عن البيانات الصغيرة جدًا لا يمثل مشكلة كبيرة
في فقدان وحدة المعالجة المركزية لتطبيق الواجهة الأمامية:
يعد فقدان وحدة المعالجة المركزية للضغط الإضافي للبيانات أقل بكثير من تحسين الأداء الناتج عن زيادة معدل الوصول إلى ذاكرة التخزين المؤقت وتقليل الوصول إلى قاعدة البيانات في الخلفية، وهو مشابه لضغط gzip/deflate الخاص بـ http. تبلغ البيانات المضغوطة بشكل عام حوالي 30٪ حجم البيانات الأصلي، سيكون توفير 70% من استهلاك أداء الإرسال أكبر من فقدان الأداء الناتج عن ضغط الملف،
وفيما يلي توزيع كتلة البيانات لـ MemCached بعد تمكين الضغط:
# حجم_العنصر الحد الأقصى لعمر 1 ميجابايت من الصفحات هل العدد كامل؟
1 104 B 342694 s 60 604918 نعم<==يبدو أن الحد الأدنى الأصلي لتوزيع الأغلبية متضخم قليلاً عند 88 B
2 136 ب 344213 س 39 300690 نعم
3 176 ب 324647 ق 145 863765 نعم
4 224 ب 347049 س 52 243412 نعم
5 280 ب 332911 س 47 175968 نعم
6 352 ب 257080 ق 114 339491 نعم
7440 ب 330976 ق 39 92934 نعم
8 552 ب 310225 س 51 96849 نعم
9 696 ب 305251 س 68 102407 نعم
10 872 ب 298607 س 74 88947 نعم
11 1.1 كيلو بايت 276463 ق 70 66919 نعم
12 1.3 كيلو بايت 279819 ق 79 60198 نعم
13 1.7 كيلو بايت 293690 ثانية 97 59073 نعم
14 2.1 كيلو بايت 304436 ثانية 116 56492 نعم
15 2.6 كيلو بايت 298020 ثانية 102 39576 نعم
16 3.3 كيلو بايت 324546 ثانية 100 31000 نعم
17 4.1 كيلو بايت 321757 ق 97 24056 نعم
18 5.2 كيلو بايت 320132 ثانية 91 18018 نعم
19 6.4 كيلو بايت 332232 ق 89 14062 نعم
20 8.1 كيلو بايت 330696 ق 81 10287 نعم
21 10.1 كيلو بايت 329582 ق 76 7676 نعم
22 12.6 كيلو بايت 337278 ق 72 5832 نعم
23 15.8 كيلو بايت 348626 ق 66 4224 نعم
24 19.7 كيلو بايت 345881 ق 56 2856 نعم
25 24.6 كيلو بايت 345825 ق 44 1804 نعم
26 30.8 كيلو بايت 333460 ثانية 31 1023 نعم
27 38.5 كيلو بايت 335782 ق 22 572 نعم
28 48.1 كيلو بايت 302109 ق 17 357 نعم
29 60.2 كيلو بايت 358674 ق 18 306 نعم
30 75.2 كيلو بايت 396573 ق 17 221 نعم
31 94.0 كيلو بايت 431605 ق 11 110 نعم
32 117.5 كيلو بايت 418652 ق 7 56 نعم
33 146.9 كيلو بايت 408422 ق 3 17 لا
34 183.6 كيلو بايت 277529 ق 2 7 لا
35 229.5 كيلو بايت 139156 ق 1 3 رقم
36 286.9 كيلو بايت 232221 ق 1 1 رقم
37 358.6 كيلو بايت 1059 ثانية 3 6 نعم