Кроме отсутствия гибкого управления (явно не хватает ряда hook-ов), о чем я говорил ранее, таксономия в 6-м Drupal еще и делает по два запроса на каждый node_load, а не хранится в кеше контента cache_content (это хорошо показывает devel).

При формировании, к примеру, главной ленты на lux-e.ru приходится вызывать node_load до полусотни раз. С учетом того, что на один nod_load приходится 8 запросов к базе — это выливается в 4 сотни запросов из которых сотня — привет от таксономии!
Что делать? В каждом случае ответ будет очень индивидуальным. Для вывода такого уникального объекта как лента статей, поможет кеширование всей ленты. Нужно подбирать способ кеширования, подходящий для архитектуры проекта. Решения вроде модуля boost, к сожалению убивают всю динамику блоков.
Стоит с помощью того же devel проанализировать кол-во и тяжесть запросов. Закешировать какие то объекты, части верстки, блоки. В общем, есть где развернуться программисту-оптимизатору.
Данная запись опубликована в 26.08.2013 14:58 и размещена в рубрике Drupal.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Март 2, 2017 г.
Что делают в большинстве случаев после успешного submit данных формы? Вариантов два - либо показывают системное сообщение drupal_set_messge(), либо производят переадресацию на некую страницу с результатами.
Первый вариант почти всегда выглядит неказисто, ...
Читать
Февраль 28, 2014 г.
Задача распространенная для бизнеса на территории РФ, где многие перепродают товары из-за рубежа. Получается, что отпускные цены зависят от колебания валют, ...
Читать
Март 1, 2024 г.
API миграции в Drupal позволяет "тащить" данные из разных источников, но работает это на базе контрибных модулей, т.е. не из коробки.
Например, модуль migrate_source_csv добавляет возможность добавить CSV файл как источник данных.
Создание каких ...
Читать
Сентябрь 19, 2023 г.
Если вы используете глобальную установку drush, то вероятно забыли выполнить инициализацию проекта.
Drush управляется composer-ом, и после клонирования репозитория на локальный сервер требуется выполнить в корне drush:
[crayon-693998cf1d534180153616/]
Читать