2016-05-03 10 views
1

Почему Plone data.fs файл такой большой, будет ли он работать?Почему файл Plone data.fs настолько велик, будет ли он влиять на производительность?

На нашем текущем сайте файл превышает 8 ГБ. Недавно я взял на себя роль разработчика этого проекта на устаревшей установке Plone 3, и в базе данных есть огромные шейки для бутылочек.

Мое первое впечатление - 8 ГБ огромно ...?

  • В настоящее время нет больших файлов.
  • Производительность, вероятно, база данных, как:
    1. Существует Zeo кластер,
    2. сбалансированное распределение нагрузки с апача
    3. 8 ядро ​​VCPU сервер с 16 Гб оперативной памяти
    4. Любой кэшируется страница (апач слой) молния , другие невероятно медленно

ОБНОВЛЕНИЕ

После того, как ниже предложений и дальнейшего исследования. Вот некоторые статистические данные с сервера:

  • Использование памяти 15792/16045 < < --- Уч?

  • AVG CPU 300-400%, 8 CPU, 5 x zope экземпляров. Я предполагаю, что это очень высоко? как каждый экземпляр использует один процессорный поток для обработки запроса? Это почти в среднем 100% -ное использование процессора по сравнению с экземплярами?

  • Disk IO является высокой в ​​среднем 8984.85 блоков/сек

Так что же, что пункт? Файлы журнала Apache огромны в 7 ГБ ... я установлю logrotate. Но, безусловно, эти статистические данные: Высокий диск IO ... указывает на проблемы с БД? Будет ли упаковка смягчать это? Является ли упаковка опасной на таком большом участке производства?

+4

8GB Data.fs не огромно на всех, Especialy для версии Plone 3 (что не используйте plone.app.blob по умолчанию), но это зависит от большого количества информации, которую вы не предоставили (обновите свой вопрос). Например: сколько у вас объекта на вашем сайте? Вы используете много больших файлов? Как вы можете сказать, что узким местом производительности является база данных? –

+0

обновлено, дайте мне знать, если информация все еще разрежена. Просто опусти мою голову вокруг Плона. – AndrewMcLagan

+1

@AndrewMcLagan вы можете установить https://pypi.python.org/pypi/Products.LongRequestLogger и посмотреть, что является реальным узким местом в Zope/Plone. – gforcada

ответ

6

Очень маловероятно, что сам ZODB или размер вашей базы данных несут ответственность за плохую производительность. Я бы рекомендовал упаковать вашу базу данных в качестве первого шага. Если вы еще не сделали этого на регулярной основе до, упаковка будет резко уменьшить размер ZODB:

https://plone.org/documentation/faq/how-do-i-pack-the-zodb

+1

Кроме того, упаковка на ночной работе cron обычно хорошая идея: http://docs.plone.org/manage/deploying/packing.html - Используйте сценарий 'zeopack' для сценария ZEO или' zodbpack' для RelStorage. Мои сайты используют 7 дней хранения истории папок, каждый вечер. – sdupton

+0

Мои первоначальные мысли были с db как относительно нетрадиционные по сравнению с альтернативными CMS, фреймворками и языками. У меня есть сайты во много раз меньше ресурсов, резервируя в сотни раз больше запросов. Предложения по исследованию других шеек бутылки великолепны. Если у кого-то есть другие общие предложения? – AndrewMcLagan

+1

Размер БД может означать, что он не был упакован. Или что вы держите много старых версий элементов контента. Производительность ZODB, в частности, не уменьшается с размером Data.fs. – SteveM