ما هي أفضل طريقة لضغط الصور الثابتة وتخزينها مؤقتًا في Asp.net mvc

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

سؤال

أحاول العثور على أفضل طريقة لتسريع تسليم الصور الثابتة التي تشكل تصميم موقع MVC.لا يتم ضغط الصور باستخدام gzip أو تخزينها مؤقتًا في الخادم أو على العميل (مع انتهاء صلاحية المحتوى).الخيارات هي:

  1. اكتشف سبب عدم تخزين الصور مؤقتًا وضغطها بصيغة gzip مباشرةً من IIS6
  2. اكتب معالج http متخصصًا
  3. سجل مسارًا خاصًا للصور الثابتة واكتب طريقة نتيجة الإجراء الثنائي

ما هو الحل الأفضل من حيث الأداء؟

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

المحلول

الحل الأفضل هو السماح لـ IIS بالقيام بذلك.

ضغط IIS6 - على الأرجح أنك بحاجة إلى ذلك تحديد أنواع الملفات المراد ضغطها مثل أنواع .jpg و.png و.gif وما إلى ذلك.

سيأتي التخزين المؤقت من التأكد من إرسال الرؤوس الصحيحة إلى العميل من التعليمات البرمجية، وأعتقد أن هناك إعدادًا يمكنك تعيينه في IIS يمكّنه من المحتوى الثابت، لكنني لست متأكدًا من ذلك.

نصائح أخرى

من المؤكد أن المكسب من الضغط على معظم الصور باستخدام gzip لا يكاد يذكر نظرًا لأنها مضغوطة بالفعل؟

Naybe لديك بعض ملفات PNG مضغوطة بشكل سيء أو شيء من هذا القبيل؟

قد ترغب في الاطلاع على موقع نصائح الأداء الخاص بـ Yahoo والذي يتضمن بعض النصائح المفيدة حول تحسين الصور بما في ذلك روابط إلى المرافق مثل pngcrush.

من الأفضل استخدام أداة مساعدة لتحسين الصورة مرة واحدة بدلاً من الاعتماد على IIS لضغطها (ربما بشكل غير فعال) أثناء التنقل.

توجد مكتبة رائعة في معرض رموز MSDN للقيام بذلك.تسمى FastMVC.

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