Масштабируемость, нагрузка и быстродействие

Рецепты по увеличению быстродействия, масштабируемость движка, работа на сайтах с высоким трафиком.
См. также новостную группу и международный форум.

icon: 

sergera-sakh Чт, 30/07/2015 - 07:40

Ускорение генерации страницы без кэша

Друзья, требуется помощь. Суть проблемы: есть написанный самопальный модуль, на основе Simpleads (баннеро-крутилка, помесь AdRiver и DoubleClick), на сайте, где размещаем рекламу прописываем в нужное место javascript, он вызывает определенный УРЛ и подгружает, баннеров может быть до 4-х, соответственно используется случайная генерация, плюс в зависимости от REFERER баннеры могут отличаться (один рекламодатель размещается только в разделе новостей, другой только в блогах, но в одном и том же месте). Получается, что встроенный механизм кеширования не подходит, т.к.

Тип материала: 
Ключевые слова: 
Версия Drupal: 
0 Спасибо

Марк Чт, 14/05/2015 - 13:11

каждому типу материала своя страница

Друзья, есть необходимость сделать так, чтобы каждый тип материала имел свою страничку со списком нод этого самого типа.
На сайте около 100 типов материалов. Это можно сделать в views, но для этого нужно создавать 100 отдельных представлений.
Что-то мне подсказывает, что это не самый легкий путь...
Буду признателен за советы.

Тип материала: 
Модули и темы: 
Версия Drupal: 
0 Спасибо

GodZiLA Ср, 13/05/2015 - 06:37

Нагрузка на хостинг превышает допустимую в несколько раз

Всем доброго времени суток!
Опишу вкратце - недели 1.5-2 назад на сайте нашли лазейку в виде открытой формы добавления одного из модулей. Добавили примерно 15к материалов - это было первыми нагрузками. Материалы я удалил, все формы позакрывал, вроде отбился.
Но через некоторое время спамеры начали грузить сайт тем, что стали ходить по созданным собой ссылкам, плюсом стали грузить страницы /users, site/*(и тысячи внутренних файлов) и node/add (сюда пробиться не могут - всё перекрыто).
В .htaccess я временно перевёл /user и node/add на 403, пробовал site/* перевести туда же - получается беда.
Запросил slowlog на хостинге - просто дичайшая нагрузка по запросу "SELECT * FROM variable" и

Тип материала: 
Версия Drupal: 
0 Спасибо

GodZiLA Ср, 13/05/2015 - 06:37

удалить


Litos Втр, 21/04/2015 - 12:15

Varnish + nginx + php-fpm. Не могу запустить ngnix на порту 8080

Здравствуйте.

Схема работы должна иметь следующий вид:
1. пользователь открывает в браузере сайт, при этом отправляется запрос на 80 порт
2. первым стоит Varnish на 80 порту. Если у него есть запрос - он отдаёт его сам. Если нет - переводит запрос на 8080 порт
3. на 8080 порту стоит Nginx. Если у него есть запрос - отдаёт сам, если нет - переводит на 9000 порт
4. на 9000 порту стоит php-fpm. Он выполняет полную обработку запроса с вызовом БД и загрузкой файлов

Конфиги:

/etc/default/varnish
DAEMON_OPTS="-a :80 \
-T localhost:6082 \
-f /etc/varnish/default.vcl \
-S /etc/varnish/secret \
-s malloc,512M"

/etc/varnish/default.vcl
backend default {
.host = "127.0.0.1";
.port = "8080";
}

Тип материала: 
Ключевые слова: 
Версия Drupal: 
0 Спасибо

kirill_dan Сб, 04/04/2015 - 19:46

Производительность Hierarchical Select

Всем привет. Есть проблема. Что на локалке, что на ВПС, разницы нет. Проц I7 4200, Ram 16G, SSD.

Есть иерархическая таксономия: страны/регионы/города. Всего 150 тыс. записей. При добавлении новой ноды, когда происходит первая загрузка формы, и еще когда выбираем регион и начинает работать AJAX, то тормоза такие, что можно смело идти кофе готовить. Уходит по 20-50 секунд на то, чтобы подгрузить нужный регион с городами. Это полный пипец. Виджеты пробовал разные, толку от их замены ноль. Самое стабильное работает на HS, но тормоза просто жуть. Профайлер говорит, что подавляющее количество времени уходит на формирование родительских терминов и children терминов. 150 тыс. записей - это по сути полная фигня, но базу ложит так, что просто капец.

Тип материала: 
Ключевые слова: 
Версия Drupal: 
0 Спасибо

AnNik Сб, 04/04/2015 - 12:19

Перенос большого сайта с 6 на 7

Господа, был ли у кого-то опыт переноса большого сайта с 6 на 7 версию?
Поделитесь плз опытом, как все проходило, возникали ли какие-то проблемы при конвертации? В общем, интересны любые впечатления и опыт на эту тему.

Кратенько о сайте, который надо бы перенести:
- 400+ тыс нод;
- чуть меньше 2 млн комментов;
- куча модулей (ключевые: privatemsg, og, badges, + несколько довольно сложных самописных).

Тип материала: 
Ключевые слова: 
0 Спасибо

moralist Пнд, 23/03/2015 - 23:15

[Решено] Просматривая firebug...

В firebug'е видно, что слишком долго грузится страница и картинки,
при этом время получения быстрое, а время ожидания очень большое.

Время ожидания - этот я так понимаю запросы к базе данных и обработка, или что-то еще?

И время-то это, при простом обновлении страницы самое разное - то 5, а то и 25с ...

Тип материала: 
Ключевые слова: 
Версия Drupal: 
0 Спасибо

Deys Ср, 18/03/2015 - 20:11

Проблема с установкой модуля OpenStack Object Storage (Swift)

Добрый день.
Пытаюсь связать Drupal 7 и облачное хранилище от Selectel. Цель, при создании Ноды пользователем файлы и изображения летели в облако, а не в локальную папку хоста.

Тип материала: 
Ключевые слова: 
Версия Drupal: 
0 Спасибо

ladovod77 Ср, 18/03/2015 - 08:05

Быстродействие сайта на Commerce

Прошу совета у сообщества. Клиенту необходимо было улучшить скорость работы сайта интернет-магазина на Commerce. Сайт не сильно загружен - собственно сама страница товара, в хедере корзина, в правом сайдбаре 5 рекомендуемых товаров. Сделал настройки кэширования для views, установил entity cache + commerce entity cache. Также был опробован модуль file cache. Все сделанные манипуляции особого результата не принесли максимум 10%.
Devel выдает
Executed 748 queries in 1369.6 ms. Queries exceeding 5 ms are highlighted. Page execution time was 3333.41 ms. Memory used at: devel_boot()=2.31 MB, devel_shutdown()=56.33 MB, PHP peak=57.75 MB.

Тип материала: 
Модули и темы: 
Ключевые слова: 
Версия Drupal: 
0 Спасибо

mykhailyuk Втр, 17/03/2015 - 16:34

Быстродействие сайта

Такая тема: после установки модуля Advanced CSS/JS Aggregation скорость загрузки заметно улучшилась, но потом, возможно после запуска крона или очистки кеша, или других непонятных причин, страницы грузятся долго, точнее, страницы открываются сразу, но детектор загрузки на вкладке страницы показывает длительную загрузку. Кроме того, сервис PageSpeed Insights также показывает проблемы, которые влияют на скорость.
Вопрос: это значит, что модуль не справляется со своей задачей или в его настройках есть какие-то особенности?
Прошу помощи у специалистов.
Заранее благодарен!

Тип материала: 
Ключевые слова: 
Версия Drupal: 
0 Спасибо

mNigma@drupal.org Втр, 17/02/2015 - 13:51

Вопрос по Memcache

Всем привет!
Кто досконально разбирался с этим модулем, подскажите, пожалуйста, как программно удалить (очистить) кэш только у определенной страницы или ноды.
Не могу найти решения. Как очистить весь знаю.
Может кому пригодится по file cache, он стоял раньше:

Тип материала: 
Модули и темы: 
Ключевые слова: 
Версия Drupal: 
0 Спасибо

katelyogkaya Ср, 11/02/2015 - 07:52

Как растянуть изображение?

Здравствуйте!
Я работаю с Drupal недавно. Проблема состоит в следующем: я создаю сайт, вставила картинку, но не могу её растянуть. Подскажите, как это сделать. Спасибо)

Тип материала: 
Версия Drupal: 
0 Спасибо

toxxxa Ср, 21/01/2015 - 20:29

[РЕШЕНО] Drupal 7 и сжатие CSS / JS

Заметил, что при включенном сжатии файлов CSS и JS сервер отдаёт агрегированные, но несжатые файлы.
Причём сами файлы *.css.gz и *.js.gz друпал ответственно генерирует и складывает в папку /files/

Браузер просит отдать ему gzip:

Тип материала: 
Ключевые слова: 
Версия Drupal: 
0 Спасибо

aman1792 Пт, 16/01/2015 - 14:40

БАЗА ДАННЫХ ЗАПИСЬ

Пишу свой модуль телефонии, есть вопрос как записать большое количество записей в бд! При загрузке обработчика который начинает записывать данные происходит следующее записывается 22 к файлов а потом Maximum execution time of 240 seconds exceeded in
а записало тока за полтора года , ещё надо 2.5 записать, вызываю функцию обработчика через крон
function module_phone_cron() {
module_phone_connect_bd();
}
Возможно ли файлы записать за один раз? либо инные варианты =))

Тип материала: 
Версия Drupal: 
0 Спасибо

arsen.borovinskiy Пт, 26/12/2014 - 00:47

Результаты нагрузочного тестирования. Кому удавалось получить более 200+ одновременных соединений?

Провел нагрузочное тестирование.

Конфигурация:

1) 1 сервер БД MySQL 5.1, 16 vCPU/3GHz, 18 GB RAM, 12 GB под InnoDB, 10GB Ethernet.
2) 1 сервер под кеш Redis или Memcache c выделенными 4GB, 10GB Ethernet.
3) 3 сервера nginx/php-fpm, drupal7, 16 vCPU/3GHz, 8GB RAM, APC, HDD примерно 400 IOPS, 10GB Ethernet.
4) 1 балансировщик nginx 4vCPU, без кеширования ответов, 10GB Ethernet.

Все кеши Drupal в Redis, сессии в Redis. Пробовал вместо Redis использовать Memcache, разницы не заметил. Все таблицы MySQL в InnoDB.

В силу специфики сайта, Boost или кеширование для анонимов на балансировщике не использовалось.

Тестировал ab на различные ноды и JMeter по логам апача.

Результаты ab:

Тип материала: 
Версия Drupal: 
0 Спасибо

noobishe Пнд, 22/12/2014 - 19:56

Тупит "Восьмерка"

Всем привет!
Поделитесь оптом, с каким набором php модулей, настройками php и mysql друпал 8 будет работать нормально?
Решил поглядеть что там наделали и вроде бы все нормально работало(не считая долгой установки минут эдак 10), для того чтоб на что смотреть нагенерил контента 70тыс нод с терминами таксономии. Модулей никаких не ставил, ток один сам написал(ну чтоб контент генерить), 3 блока вивесом сделал и все... Теперь сайтик грузится очень долго, а при попытке редактировать некоторые поля вообще не укладывается в минутный таймаут...

Тип материала: 
Версия Drupal: 
0 Спасибо

romik-wlemik Вс, 21/12/2014 - 22:37

Повышенная нагрузка на сервер [Почти решено]

Приветствую вас, друзья.

Есть ли здесь люди, которые могут быстро понять и решить проблему нагрузки на сервер. У меня сайт на друпал 6. Время от времени хостер жалуется на превышение принятых норм нагрузки. На сайте посещаемость всего около 250 человек в день. Имеются лог файлы и файлы ошибок.

И ещё вопрос. Как эффективно запретить доступ к сайту через админ-панель для ряда ip (подсеть)? Имеется ввиду как это прописать в админке правильно на странице добавления правил доступа?

Буду благодарен за любую помощь.
С уважением, Роман.

Тип материала: 
Ключевые слова: 
Версия Drupal: 
0 Спасибо

dashiwa Пнд, 15/12/2014 - 12:52

Оптимизация запросов drupal

Приветствую. На своем мини блоге из нескольких страничек получаю загрузку страницы по 3-4 секунды и около 1000 запросов к бд.
Установил Devel вывел отладку запросов.
Установил Xhprof - понял что проблема в запросах.
Вопрос - Есть ли способ отсортировать список запросов по конкретным модулям,чтобы не гадать и не заниматься методом тыка?
При нахождении конкретного модуля, всегда можно либо найти менее прожорливого собрата, либо написать свой аналог.

Тип материала: 
Модули и темы: 
Ключевые слова: 
0 Спасибо

Artu Сб, 13/12/2014 - 21:17

Как почистить мусор в БД (удаленные темы и др).

Подобных тем куча, но речь идет не про кеш.

Мусор остается после удаленных тем (расположение блоков + настройки темы).
Подозреваю что лишние переводы остаются после удаления модулей.
Удаленные поля должны чистится по крону, ОК.
Что-то еще?

Но все таки как чистить мусор от удаленных тем?
Вот человек спросил - http://www.drupal.ru/node/56640, так и не нашел понимания.

Я, например, часто на сайте устанавливаю разные темы, делаю в них настройки, потом удаляю.
Через время установив тему повторно, я уже не могу вернуться к настройкам темы по умолчанию.
Да и мусор в БД ни к чему.

Неужели никто не задавался этим вопросом. Удивлен если нет модуля для этого.
Вариант с ручной чисткой БД рассматривается, но не удобен.

Версия Drupal: 
0 Спасибо

Страницы