it-swarm.asia

CSS تخفيض لسرعة التحميل / أقل عرض النطاق الترددي

هل يعد ضغط CSS/إزالة القواعد غير المستخدمة لصفحة معينة أمرًا مفيدًا من حيث النطاق الترددي أم هل يمكننا الاعتماد على التخزين المؤقت (الرؤوس/آخر تعديل) لإزالة هذا الحمل في الوضع الطبيعي؟

في صحتك

أيضا ، حظا سعيدا مع الجميع بيتا!

9
Aiden Bell

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

بالإضافة إلى ذلك ، تأكد من تمكين ضغط gzip. هذا سوف تفعل كمية هائلة للحد من عرض النطاق الترددي.

8
Matthew Shanley

هناك الكثير من الأماكن المحتملة للتحسين والتي سيكون لها تأثير أكبر ...

إذا كنت تبحث عن مكاسب أداء بدقة ، فإن تحسين مصدر CSS منخفض جدًا في السلسلة الغذائية.

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

2
Evan Plaice

لا اعتقد انها إما أو. إن تقليل حجم الملف سيساعد المستخدم في أول مرة يصل فيها إلى الملف. التخزين المؤقت سوف يساعد في زيارتهم الثانية.

2
jessegavin

في أي وقت يمكنك إزالة الأشياء ، ستحسن من سرعة التحميل ، إذا كان ذلك غير مهم. أيضًا ، من الممارسات الجيدة إزالة العناصر التي لا تستخدمها لوضوح الشفرة أيضًا.

1
Jason

يمكنك الحصول على الأفضل من كلا العالمين ، تصغير الملف في وقت التنفيذ و gzip الإخراج.
لا يزال الملف المصدر قابلاً للقراءة عندما تحتاج إلى تحريره ، لكنه مضغوط عند تنزيله

أولاً: استخدم htaccess لإخبار Apache بمعالجة جميع ملفات css كنصوص php وضغط الإخراج عند كتابة نص/css

في .htaccess AddHandler php5-cgi .css AddType text/css .css AddOutputFilterByType DEFLATE text/css

الثانية: استخدام التخزين المؤقت الإخراج مع وظيفة رد الاتصال لتقليل رمز المغلق قبل بدء التنزيل ، أيضا تعيين وقت انتهاء الصلاحية حتى يتم تخزين الملف مؤقتا

في ملف المغلق الخاص بك

<?php
ob_start("trima");
header("Content-type: text/css; charset=utf-8");
ob_start();
date_default_timezone_set('GMT');
$lasmod = "Last-Modified: " . strftime ("%a, %d %b %Y %T GMT", filemtime (__FILE__));
Header($lastmod);
$offset = 3600*24*30*12;
$expire = "Expires: " . date("D, d M Y H:i:s", time() + $offset) . " GMT";
Header($expire);
function trima($str) {
    $str = str_replace(array("\n", "\r", "\t", "\o", "\xOB"), '', $str); // remueve enter tabs y demas
    $str = preg_replace('!/\*[^*]*\*+([^/][^*]*\*+)*/!', '', $str); // remueve comentarioa
    $str = ereg_replace("[ ]+", " ", $str);                         //remueve espacios multiples
    $rep = array( '{ '=>'{', ' }'=>'}', '; '=>';', ', '=>',', ' {'=>'{', '} '=>'}', ': '=>':', ' ,'=>',', ' ;'=>';' ); // remueve espacios inecesarios
    $str = strtr($str, $rep);
    return $str;
}
?>
css content here

ثالثا: الربح؟

0
The Disintegrator

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

0
Travis Northcutt

ستؤدي إزالة بعض CSS غير المستخدمة إلى تحسين أوقات التحميل في صفحة واحدة ، ولكن عليك أيضًا موازنة ذلك مع التأثير على عدة صفحات. تريد أيضًا تجنب الكثير من طلبات HTTP.

تذكر أن gzipping CSS هو الطريقة الأكثر فاعلية لتسريع عملية تحميل CSS. الفرق بين ملف واحد مع كل شيء في وآخر مع بضع كتل غير ضرورية إزالتها ضئيل بعد gzip.

0
DisgruntledGoat

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

يرتبط الكثير من هذا بملف تعريف استخدام موقعك. إذا كنت حقًا لزجة ، فإن التخزين المؤقت يفوز. ومع ذلك ، إذا كان لديك معدل ارتداد مرتفع ، فقد تكون أفضل حالًا من خلال CSS المحسن (أو تقضي الوقت الذي تهدره في تحسين CSS مما يجعل موقعك أكثر ثباتًا!).

تتمثل إحدى الطرق التي يمكنك اتباعها إذا كان لديك ترميز خاص بالصفحة في امتلاك ملف CSS عام على مستوى الموقع وتضمين قواعد لكل صفحة في رأس مستند HTML.

0
JasonBirch