Быстродействие сайта и размер БД.

Главные вкладки

Аватар пользователя Lavio Lavio 6 августа 2013 в 6:05

Спустя некоторое время работы сайта БД разраслалсь до 1,6 Гб. Исправил через phpmyadmin с помощью оптимизации таблиц. После чего ее размер сократился до 400 мб. Это при том, что на сайте пока особо ничего нет. Несколько нод, разве что довольно много модулей, и часто удалял в большом количестве ноды/товары когда разрабатывал модуль автоматической загрузки. Сейчас все товары и их дисплеи удалил. В последнее время сам сайт стал дико тормозить. После оптимизации БД дела пошли лучше, но все же это не то что было в начале(. Так вот, вопросы:

  1. Какого размера должна быть средняя БД для интернет магазизна? Количество товаров будет около 10000.
  2. Как можно оптимизировать CMS чтобы сайт не тормозил?

P.S. Модуль через API создает товар, его дисплей, тип материала с определенным набором полей. Закрепляет в одном из полей существующий термин таксаномии. То есть напрямую в БД я не залезал, все действия по созданию сущностей производились через API.

UPD
В большинстве советов по данной тематики отсылают к запуску cron. Из статьи понял что cron это некий набор важных задач, который запускается со стороны хостинга. Тогда вопросы:

  1. Где можно посмотреть чем конкретно он занимается в моем случае?
  2. Можно ли ему назначать через админку различные действия, туже очистку БД от кэша?
  3. Можно ли для разных задач назначать разное время или промежутки времени через которые они будут выполнятся? Или крон выполняет все что в него включено при каждом запуске?
  4. Если крон отвечает за рассылку с сайта то, допустим, изменение времени его запуска с каждых 2 часов на каждые 24 часа будет влиять на то когда будут отсылаться уведомления пользователям на те или иные события? Например сейчас для запуска cron стоит промежуток 2 часа. Произошло событие: клиент оформил заказ ему на почту отправляется письмо по правилу из модуля rules. Оно к нему отправится сразу как сработало правило или как сработает cron?

Комментарии

Аватар пользователя Lavio Lavio 6 августа 2013 в 8:27

Уже искал. В основном ответы про 6ю версию друпала. Также, часто встречается рекомендация запускать крон, но при этом про его настройку ничего не пишется, или он сам из коробки всё и правильно чистит?
Кстати, в настройках Друпала кэш вообще отключен, почему он тогда накапливается? И почему при очистке кэша через сам друпал он не очищается из БД?

Аватар пользователя Lavio Lavio 6 августа 2013 в 10:26

natbampo wrote:
Это связано наверное с кешированием форм и таблицей cache_form

Благодарю за предположение!) Было бы замечательно, если Вы, еще и решение предложили) Возможных причин нашел уже достаточно, все через тотже поиск. Но ни одного подходящего мне решения.

Аватар пользователя webpavilion webpavilion 6 августа 2013 в 10:28

Самый верный способ решения проблемы убрать кеши из БД в память (memcache, apc).

Если возможности такой нет то ставьте db_maintenance и на странице мойсайт/admin/config/system/cron установите запуск крона раз в час.

Аватар пользователя dotter90 dotter90 10 ноября 2015 в 11:49

"natbampo" wrote:
Это связано наверное с кешированием форм и таблицей cache_form

У меня такое было. нашел модулек для очистки. прилагаю.

Аватар пользователя dotter90 dotter90 6 августа 2013 в 11:14

"webpavilion" wrote:
в 7.22 (или в 7.19 не помню точно) баг с cache_form expire исправили, ваш модуль не актуален уже.

Это не мой модуль. и потом я пользуюсь 7.22 версией, и у меня при выносе им на хостинг этот баг вылез. за каждые пол-часа таблица cache-form разрасталась неимоверно.