ما الذي تستخدمه للتخزين المؤقت الموزع في مزارع الويب التي تعمل بنظام ASP.NET؟

StackOverflow https://stackoverflow.com/questions/103601

سؤال

أشعر بالفضول لمعرفة ما يستخدمه الآخرون في هذه الحالة.أعرف اثنين من الخيارات المتوفرة مثل منفذ memcached أو ScaleOutSoftware.يبدو أن منافذ memcached لا تعمل بشكل نشط (صححني إذا كنت مخطئًا).يعد برنامج ScaleOutSoftware مكلفًا للغاية بالنسبة لي (لا أشك في أنه يستحق ذلك).هذا لا يعني أنني لا أريد أن أسمع عن الأشخاص الذين يستخدمون memcached أو ScaleOutSoftware.أنا فقط أذكر ما "أعرفه" في هذه المرحلة.

لذلك سؤالي هو في الأساس هذا:لأولئك منكم بنشاط باستخدام التخزين المؤقت الموزع، ما الذي تستخدمه، هل أنت سعيد به، وما الذي يجب أن أبحث عنه؟

سأنتقل إلى خادمين قريبًا جدًا... سيكون كلاهما في نفس الموقع.أستخدم التخزين المؤقت بشكل كبير (ولكن بعناية) لتقليل الحمل على خادم قاعدة البيانات الخاصة بي.

يحرر: لقد قمت بتنزيل حل برنامج Scaleout.لقد قمت بترميزها ويبدو أنها تعمل بشكل جيد.عليّ فقط أن أقرر ما إذا كانت محفظتي ستتخلى عن الأموال النقدية اللازمة لذلك.:) أي شخص لديه تجارب جيدة أو سيئة مع ScaleoutSoftware؟

تحرير مرة أخرى: لقد مرت بعض الوقت منذ أن سألت هذا؟هل هناك المزيد من الأفكار حول هذا الموضوع؟وانتهى بنا الأمر بشراء الحل من ScaleOutSoftware وكنا سعداء به، ولكنني أشعر بالفضول تجاه ما يفعله الآخرون.

هل كانت مفيدة؟

المحلول

نحن نستخدم حاليًا ذاكرة تخزين مؤقت بسيطة للغاية كتبتها في بضع ساعات، استنادًا إلى إعادة استضافة ذاكرة التخزين المؤقت لـ ASP.NET في إحدى خدمات Windows (مزيد من المعلومات وكود المصدر هنا).لن أتظاهر بأنه قريب من تحسين شيء مثل Memcached لكننا كنا نبحث فقط عن شيء بسيط ومجاني حتى جاءت Velocity، وقد صمدت بشكل جيد للغاية حتى تحت الحمل الثقيل إلى حد ما.

يتعلق الأمر بتفضيلاتنا الشخصية للمكونات الأساسية - على سبيل المثال.تلك التي تؤثر على ما إذا كان الموقع متاحًا أم لا - إما (أ) مدعومة من قبل بائع يتمتع بسجل من الدعم السريع والعالي الجودة، أو (ب) مكتوبة بواسطتنا حتى نتمكن من إصلاحه بسرعة إذا حدث خطأ ما .المصدر المفتوح جيد جدًا، ونحن بالفعل نستخدم بعض برمجيات المصدر المفتوح، ولكن إذا كان موقعك غير متصل بالإنترنت، فللأسف مجموعات الأخبار وآخرون ليس لديك اتفاقية مستوى الخدمة لمدة ساعة واحدة، ولأنها OSS لا يعني أن لديك الفهم اللازم أو القدرة على إصلاحها بنفسك.

نصائح أخرى

لدى Microsoft منتج معلق يحمل الاسم الرمزي سرعة.لا يزال في برنامج CTP، ويتحرك ببطء، ولكن يبدو أنه سيكون جيدًا جدًا.سنقوم بتحسينه في المستقبل القريب لنرى كيف يتعامل مع ما نريد أن يفعله (> 2 مليون قراءة/كتابة في الساعة).سيتم الرد مرة أخرى مع النتائج.

يوجد مشروع .NET أصلي 100% وموثق جيدًا ومفتوح المصدر (LGPL) يسمى ذاكرة التخزين المؤقت المشتركة.يبدو أنه لم يتم ذكره بعد في SO، ولكنه واعد ويجب أن يكون قادرًا على القيام بما يتوقعه معظم الناس من ذاكرة التخزين المؤقت الموزعة.حتى أنه يدعم استراتيجيات مختلفة مثل التخزين المؤقت الموزع أو المكرر وما إلى ذلك.

سأقوم بتحديث هذا المنشور بمزيد من التفاصيل بمجرد أن أتيحت لي الفرصة لتجربته على مشروع حقيقي.

نحن نستخدم منفذ memcached لنظام التشغيل Windows ونحن سعداء جدًا به. واجهة برمجة تطبيقات عميل enyim.com memcached رائع وسهل العمل معه.كما أنها مفتوحة المصدر، وهي ميزة كبيرة، إذا سألتني.

نحن نستخدم الآن هذا الإعداد في تطبيق ويب للإنتاج وقد ساعد كثيرًا في تحسين أدائه.

تم العثور على غلاف/منفذ .NET رائع هنا على كودبلكس.صلصة رائعة!

نحن نستخدم memcached مع مكتبة enyim في بيئة الإنتاج (www.funda.nl).يعمل بشكل جيد، وأنا سعيد جدًا به، ولكننا لاحظنا زيادة كبيرة في استخدام وحدة المعالجة المركزية لدى العملاء.من المفترض أنه بسبب إجراء التسلسل/إلغاء التسلسل.نقوم بحوالي 1000 قراءة في الثانية.

أحد المنتجات التي تم تجربتها واختبارها بواسطة 100 من العملاء حول العالم هو نكاش.إنه

منتج غني بالميزات يتيح لك تخزين حالة الجلسة بطريقة متكررة ومتاحة للغاية، ويتيح لك مشاركة البيانات

داخل المؤسسة بالإضافة إلى سد اتصالات WAN التي تعمل بشكل أساسي كنسيج بيانات وأخيرًا تتيح لك إنشاء طبقة تخزين مؤقت مرنة بحيث عندما

يمكنك توسيع نطاق تطبيقك، حيث يمكنك إضافة خوادم إلى ذاكرة التخزين المؤقت وتعزيز الأداء بشكل أكبر.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top