Доброго времени суток. Проблема заключается в следующем: на одном и том же хостинге имеется 3 сайта на разных инсталяциях modx revo. Проблема в том, что на одном из них очень долго происходит генерация страниц! Опытным путем установил что дело в модуле quip.
На проблемном сайте создал пустую страницу, в шаблоне вызываю только модуль комментариев:
<div class="post-comments" id="comments">
[ [!Quip?
&thread=`blog-post-[[*id]]`
&closeAfter=`30`
]]
<br><br>
[ [!QuipReply?
&thread=`blog-post-[[*id]]`
&moderate=`0`
&moderatorGroup=`Moderators`
&closeAfter=`30`
]]
</div>
Генерация пустой страницы с модулем quip, но без комментариев составляет 1,5 сек., в то же время пустая страция с несколькими строками кода собирается за 0,05-0,1 секунды. Это можно было бы полностью списать на работу самого модуля quip, только на другом рабочем сайте всё работает намного быстрее, и модули используются одинаковые, и количество страниц одинаковое 150-170.
Пытался разобраться с проблемой. Залил еще одну установку модх для тестов, создал несколько документов, добавил комментариев. Страница с 22 комментариями создается за 0,8 сек., в то время как на проблемном движке пустая страница с 6-ю комментариями за 1,9920 сек.
Сначала думал с базой может что не так. На обоих сайтах пробовал сделать выборку из таблицы комментариев:
$start = microtime(true);
$modx->addPackage('quip', MODX_CORE_PATH . 'components/quip/model/', 'modx_');
//$query = $modx->newQuery('quipComment');
$result = $modx->getCollection('quipComment');
$i=1;
foreach($result as $row){
$t = $row->get('body');
print ('<br />Next:'.$t.' i = '.$i++);
}
$time = microtime(true) - $start;
printf('<br>Скрипт выполнялся %.4F сек.', $time);
На нормальном выполняется за 0,07 сек. на тормозном 0,09 сек. количество комментариев 52 и 46 соответственно.
Уже не знаю куда копать что бы найти из-за чего такая тормознутость. Единственная мысль что тормозной сайт старый, ему 2 года. Соответственно создавался он на первых версиях модх, а потом апгрейдился. Если не ошибаюсь создавался на 2.04 версии или чуть старше.
Если дело всё же в этом то может кто знает как перенести данные на свежую установку?
[ed. note: tempter last edited this post 13 years, 7 months ago.]