DrupalTour. Zhytomyr — Drupal Optimization (Dmitry Kinakh, InternetDevels)

Preview:

Citation preview

Drupal

Optimization

Що оптимізовувати?

1. Запити до бази даних;

2. Завантаження CSS та Javascript;

3. Зображення;

4. Непотрібні модулі.

Крок 0 - Штатні інструменти

оптимізації DrupalСторінка

Administration»Configuration»Development»Performance

- кешування для анонімів;

- кешування блоків;

- агрегація CSS;

- агрегація JavaScript.

Кешування блоків

● DRUPAL_CACHE_PER_ROLE;

● DRUPAL_CACHE_PER_USER;

● DRUPAL_CACHE_PER_PAGE;

● DRUPAL_CACHE_GLOBAL;

● DRUPAL_CACHE_CUSTOM;

● DRUPAL_NO_CACHE;

Крок 1 - вимикаємо

вбудовані інструменти1. Вимикаємо - update manager;

2. Вимикаємо модуль devel;

3. Вимикаємо overlay;

4. Вимикаємо тулбар та встановлюємо administration menu;

Примітка: Вимикаємо і видаляємо всі модулі які не

використовуються на сайті.

Крок 2 - статичні сторінкиBoost - модуль дозволяє кешувати сторінки для анонімних

користувачів.

Модуль дозволяє пізніше серверу віддавати закешовані сторінки в

декілька разів швидше, оскільки запитів до бази даних не

відбувається.

Крок 3 - редагуємо .htaccess

файл# Use mod_deflate to gzip components

<IfModule mod_deflate.c>

AddOutputFilterByType DEFLATE text/css application/x-javascript

application/javascript text/plain text/html text/xml

application/xml

</IfModule>

# Disable ETags

FileETag None

Крок 4 - підключаємо CDN

Крок 5 - Alternative PHP Cache

Розширення PHP APC робить дві корисні речі:

- кешує скомпільовані файли php, при повторному зверненні їх

не доведеться заново читати з диска і компілювати,

- кешує змінні, поміщені в пам'ять APC програмістом між

завантаженнями сторінок, знижуючи навантаження на mysql. В

Drupal-і для цього замінюється стандартний кеш.

Крок 6 - Varnish

Крок 7 - mod_pagespeedМодуль представляє з себе набір фільтрів, кожний з них і

приклади використання представлені і описані в

документації. Застосовувати і використовувати модулі слід

виходячи з потреб свого проекту, у кожного фільтра є свої

особливості, які слід врахувати при використанні, звертаючи

увагу на розділ «Risks» в їх документації.

Крок 8 - XHprofПрофілювання - це процес аналізу роботи додатку для збору інформації

про продуктивність (збір набору характеристик - час, використання

оперативної пам'яті і ресурсів процесора, кількість викликів функцій і

так далі). Відповідно інструмент, який використовується для цього,

називається профайлером. Профайлери в більшості випадків

використовують щоб знайти хот-спот в додатку ("гаряче місце", тобто

ділянка коду, час виконання якого невиправдано великий).

Крок 9 - SPDY SPDY (читається як «speedy», «спіді») — протокол прикладного

рівня для передачі веб-вмісту, розроблений корпорацією Google.

Основним завданням SPDY є зниження часу завантаження веб-

сторінок та їх елементів. Це досягається за рахунок розстановки

пріоритетів і мультиплексування передачі декількох файлів таким

чином, щоб було потрібно тільки одне з'єднання для кожного

клієнта.

Крок 10 - Watchdog

Журнал системних подій

Перевірка результатів

оптимізації

Сервіси для тестування

швидкодії сайтів

- loadimpact.com

- PageSpeed

- YSlow

- Pingdoom

- Gtmetrix

Дякую за увагу

Recommended