Делает ли наличие более активных модулей замедление работы сайта?
Я установил 30 модулей для своего сайта и боюсь, что он станет слишком медленным.
Делает ли наличие более активных модулей замедление работы сайта?
Я установил 30 модулей для своего сайта и боюсь, что он станет слишком медленным.
Ответы:
Наличие большего количества включенных модулей замедляет загрузку Drupal, так как загружается и анализируется больше файлов. Кроме того, наличие большего количества включенных модулей не означает автоматически более медленный сайт, поскольку не все модули выполняют код для каждой запрашиваемой страницы.
Например, если вы установили представления и включили только просмотр передней страницы, представления не будут выполняться, если запрошенная страница является страницей узла. Хотя модуль Views реализует hook_menu_alter()
, и это выполняется, даже если вы не включили какое-либо представление, но модуль Views включен. Любая реализация hook_menu_alter()
вызывается , когда меню восстановления, и это обычно не происходит на каждом запросе страницы.
Да. Тем не менее, 30 не о чем беспокоиться. У вас неприятности, когда вы идете за 100;)
Установите кэш байт-кода (APC или XCache), чтобы устранить большую часть замедления, включая включение большого количества файлов, и убедитесь, что периодически удаляете неиспользуемые модули (обычно каждый проект собирает модули, которые в какой-то момент времени не используются)
В дополнение к обоим правильным ответам @Bojan Zivanovic & @kiamlaluno вам следует позаботиться о взаимодействии модулей. Наличие большого количества модулей увеличивает риск плохих взаимодействий модулей (таких как взаимодействие с наркотиками). Я бы сказал, что иметь более 50 модулей становится опасно, и вам следует заранее проверить, что вы не используете несколько модулей для одних и тех же доменов задач.
Например, создание страниц с блоками, представлениями, панелями, полями, содержащими представления, блоками, содержащими представления, блоками, содержащими панели, содержащие представления, ... Идея состоит в том, чтобы получить то, что может понять обычный мозг (как составляются мои разные страницы) , Это может иметь большое влияние на производительность, когда несколько сложных режимов загрузки скрыты и связаны. Другой пример - добавление нескольких правил ACL из нескольких модулей для каждого контента.
Если вы боитесь производительности, всегда используйте модули профилирования и отслеживайте различия после каждого добавления нового модуля. Иногда небольшой хук с каким-то SQL внутри или пользовательским шаблоном сэкономит время вашего сайта.
Во время создания сайта следует помнить о трех вещах, которые могут ускорить работу вашего сайта drupal:
и что касается модульной части, очевидно, что большее количество модулей будет медленнее, поскольку для обработки требуется больший объем ОЗУ.
Тем не менее, от 30 до 60 модулей не будут так сильно влиять на ваш сайт.
Соотношение времени загрузки сайта и количества модулей примерно равно 100 модулям, что задержит сайт на 350 - 650 мс.
надеюсь, что на следующем сайте вы будете помнить об этом .. :)