Jak działa optymalizacja przepustowości?


11

Zoptymalizowałem połączenie wszystkich plików CSS i JavaScript w mojej witrynie.

zdjęcie 1.

Jeśli uruchomię Yslow w przeglądarce Firefox, aby zobaczyć składniki załadowane dla tej witryny, pokaże, że ładuje 8 plików JavaScript i 8 plików CSS.

zdjęcie 2

Dlaczego te pliki nie są łączone?

Odpowiedzi:


10

Zagregowane pliki CSS i JS w Drupal 7 są podzielone na grupy, więc naturalnie uzyskasz więcej plików niż zwykle w Drupal 6.

Nie będę wchodził w to wszystko, ponieważ istnieje już doskonały artykuł , który wyjaśnia go z dokładnością.

D7 stosuje nową strategię, aby rozwiązać ten problem - agregaty są podzielone na trzy grupy: CSS_SYSTEM, CSS_DEFAULT i CSS_THEME dla stylów oraz JS_LIBRARY, JS_DEFAULT i JS_THEME dla Javascript. Każda grupa jest dalej podzielona na pliki ładowane na każdej stronie oraz pliki ładowane warunkowo w oparciu o opcję „every_page”. Zauważ, że ta opcja ma pewien potencjał do zamieszania - nie powoduje, że plik jest ładowany na każdej stronie - to tylko „wskazówka” dla systemu podstawowego, aby umieścić go w tej grupie.

Ostatecznie celem tych podziałów jest grupowanie plików w grupy funkcjonalne, które są mniejsze i mniej prawdopodobne, że zostaną podzielone przez błędny styl warunkowy lub skrypt. Otrzymujemy osobne pliki dla bibliotek podstawowych, motywu i plików specyficznych dla strony. Patrząc na wyniki, zapasowy Drupal 7 wyświetla osiem arkuszy stylów (w tym style przeglądarki), podczas gdy D6 ma tylko trzy w domyślnej instalacji. Czy to jest optymalne? Odpowiedź będzie inna dla każdej strony.

Jeśli powoduje to problemy, możesz rzucić okiem na moduł Core Library :

Ten moduł zmienia proces mechanizacji agregacji rdzenia Drupala. Znacznie zmniejsza on operacje we / wy i zagregowaną liczbę plików oraz zwiększa szanse na trafienie w pamięć podręczną klienta, dlatego chociaż produkuje większe zagregowane pliki, znacznie zmniejsza wykorzystanie przepustowości podczas przeglądania przez użytkowników.


Świetny artykuł. Zostawię pliki bez zmian.
— chefnelone

Dodaj także, że AdvAgg może być używany do wymuszania większych grup.
— mikeytown2
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.