Кроме отсутствия гибкого управления (явно не хватает ряда 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.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Май 14, 2025 г.
Drupal давно использует composer для управления зависимостями и для загрузки/обновления модулей. Composer кроме всех прочих полезностей позволяет наладить ...
Читать
Июнь 1, 2023 г.
В TWIG уже много разных встроенных фильтров, Drupal их перечень только расширяет. Но наше счастье было бы не полным, если бы мы не могли добавить свои фильтры.
В Drupal это делается через сервис twig.extension.
Для начала надо сформировать описатель, ...
Читать
Август 31, 2021 г.
Рассмотрим пару кейсов, того как рендерить блок из вашего кода.
Блок существует как Entity
Вы создали произвольный блок через Manage->Structure->Block ...
Читать
Апрель 4, 2024 г.
Как загрузить данные ноды, если текущая страница - это как раз страница публикации?
В семёрке мы обращались к глобальному массиву аргументов запроса, чтобы получить ID ноды, и далее можно загрузить сам объект, а начиная с 8й версии эта операция ...
Читать