Блог #cache

Новый год 2008 (Норвегия, Швеция, Дания). Крунхюсет – старейшее здание Гётеборга
Перу и Боливия. Зима-весна 2011. Солончак Уюни
Байкал, остров Ольхон, Хужир. Март 2018. Дерево
Перу и Боливия. Зима-весна 2011. Ламы
Байкал, остров Ольхон, Хужир. Март 2018. Дорога на Ольхоне
Тенерифе.
Исландия 2023.
Новый год 2008 (Норвегия, Швеция, Дания). Дорожка
Лето 2008 (Куба). Сенфуегос — Театр Томаса Терри
Гармиш-Партенкирхен, Миттенвальд, Инсбрук. Май-июнь 2022. Еще одно вкусное баварское пиво
Осень. %!s(<nil>)
Хорватия, Млини 2017. Панорама Млини
Лето 2008 (Куба). Типичный Кубинский пейзаж
Перу и Боливия. Зима-весна 2011. Закат
Тойфельсберг. %!s(<nil>)
Стамбул 2024. %!s(<nil>)
Ирландия. %!s(<nil>)
Перу и Боливия. Зима-весна 2011. Куско, малыш
Ирландия, март 2015. Еще один типичный квартал
Хорватия, Млини 2017. Пляж
Киев, лето 2009. Разрушенный вандалами и реставрируемый памятник Ленину
Байкал, остров Ольхон, Хужир. Март 2018. Ольхон
Тенерифе.
Перу и Боливия. Зима-весна 2011. Сочное фото
Чешская Швейцария и немного Дрездена. Дорога вдоль реки
Тайланд 2018. %!s(<nil>)
Весна 2012. Германия — Франция — Италия. Трасса Формулы 1 в Монте-Карло
Перу и Боливия. Зима-весна 2011. Солончак Уюни
Тенерифе.
Весна 2012. Германия — Франция — Италия. Толпа в Каннах
Новый Год 2009 (Амстердам). типичная обувь без голландца

Кеширование на Drupal-сайте. Сравнение встроенного в Drupal кеша, статического файлового кеша (модуль Boost) и Varnish

Публикую текст своего доклада для Друпалконфа, который прошел 4 июня 2012 года в Москве. Хочу акцентировать внимание на том, что этот текст не адаптирован под блогпост и публикуется в том виде, в котором я рассказывал его на конференции.

Введение

В текущем Drupal 6 проекте, над которым я работаю последние 2 года, в пике мы отдаем до 2 млн просмотров страниц в день и забиваем полностью наш 200-мегабитный интернет-канал. Судя по отчетам нашей системы мониторинга с текущей архитектурой и железом (6 серверов: 2 фронтэнда с nginx, 2 бэкенда с Varnish + Apache + Drupal и 2 MySQL-сервера с master-slave репликацией) мы можем выдерживать втрое большую нагрузку, если решим вопрос с каналом.

За время работы этого проекта мы на нем успели применить и испытать если не все, то большинство технологий по оптимизации производительности, которые применимы к Друпалу, в том числе использовали собственные велосипеды, но в итоге пришли к использованию связки Прессфлоу + Варниш и эта связка показала себя самой производительной и простой в сопровождении (в сравнении с собственными патчами ядра и модулей).

Я хочу рассказать о том, какие для Друпала существуют средства оптимизации скорости отдачи контента и сравнить их плюсы и минусы. Я не буду вдаваться в детали и приводить примеры конфигов, это все можно найти в интернете (я у себя в блоге выложу в ближайшее время пример конфига, используемого в наших проектах). Я не буду рассказаывать об оптимизации конфигов MySQL, установке систем кеширования опкода, так как это большая тема достойная отдельного доклада, она хорошо раскрыта, в интернете можно найти много статей по оптимизации окружения, в котором работает сайт. Кроме того, эта тема имеет мало отношения к Друпалу и больше должна быть интересна системным администраторам, чем программистам (хотя программистам тоже неплохо бы в ней разбираться).

Основная идея доклада в том, что на контеных сайтах (речь идет о блогах, интернет-магазинах, новостных сайтах, а не веб-сервисах типа поисковых систем) большинство пользователей видят то же содержимое страниц, что и все другие посетители это сайта, поэтому умело закешированные данные могут значительно снизить нагрузку на веб-сервер и базу данных и, как следствие, увеличить скорость отдачи контента, и при этом не навредить сайту, так как, например, для новостного сайта кеш страниц на 1 час совершенно неприемлем.

Читать дальше ➠