7. 1
Кэширование в коде
• drupal_static
• cache_get/cache_set
• Кэширование в renderable arrays
• Entity cache
8. 1
Boost
• Кэш для анонимов
• Хранит кэш в файлах
• Устанавливается правкой .htaccess
• Подходит для shared-хостинга
9. 1
Varnish
• Кэширующий прокси
• Для анонимов
• Модуль интеграции Varnish
• Сброс кэша через purge-метод
10. 1
Хостинг поближе к клиентам для
региональных проектов / CDN для
международных проектов
• ping до ya.ru (RU), google.com (USA) — ~30 мс
• ping до drupal.org (USA) — ~200 мс
• ping до ua-ix.net.ua (UA) — ~9 мс
11. 1
CDN
• Разбросан по миру
• Идеален для статики
• Позволяет использовать far future expiration
date для статики
12. 1
gzip
• Сжатие до 70%
• Идеальный вариант: сохранять результат
сжатия на диск (Javascript Aggregator в D6)
14. 1
Агрегация (ядро)
• 1 js на scope/group/every_page
• 1 css на group/every_page
• Css минифицируется
• Много файлов кеша
15. 1
Агрегация (core_library)
• 1 js на scope
• 1 css на group
• Css минифицируется ядром
• Js минифицируется jsmin
• Режим обучения
16. 1
Хранение внешних ресурсов
локально
• Web-шрифты (google fonts иногда лагает)
• Сторонние js-файлы (Javasript Libraries;
возможны проблемы с document.write)
17. 1
Js — вниз страницы
• Что бы не блокировать загрузку контента
скриптами
• Избежать эффекта «белого сайта»
23. 1
Nginx для статики
• Отдает статику в ~2 раза быстрее чем Apache
• Может быть настроен на кэш статики в RAM
24. 1
Cookie free домены
• 200-500 байт в каждую сторону, которые
никогда не используются
• Поддомены если сайт с www, домены — если
нет
25. 1
Far future expiration date
• Реализуется модулем CDN
• Уникальное имя для браузера
(site.com/cdn/farfuture/xxx/xxx/misc/throbber.gif)
• Expire заголовок в будущем
• CDN или пайка к Nginx
27. 1
Lazyload изображений
• Перекрывает theme_image
• Сохраняет настоящий путь в data-src
• Заменяет картинку на 1пиксельный гиф
• Показывает картинку js-ом
28. 1
Ajax_blocks
• Отложенная загрузка блоков
• Для определенных ролей
• Сразу или через время
• Получает все блоки одним ajax-запросом
29. 1
Views infinite scroll
• Пейджер для Views
• Грузит контент при скроле как вконтактик
30. 1
Ajax pipe
• Агрегатор ajax-запросов
• На клиенте поход на behaviours
• На сервере hook_ajax_pipe()
• Поддерживает стандартные ajax-комманды