Sitemap генерируется 414 секунд.
Добрый день, на сайте 12836 страниц. Sitemap.xml генерируется 414 секунд.
Что можно сделать с этим, как ускорить. Яндекс и Google не могут загрузить файл.
Вот такой вывод showLog:
Что можно сделать с этим, как ускорить. Яндекс и Google не могут загрузить файл.
Вот такой вывод showLog:
0.0001330: pdoTools loaded
0.0000470: Conditions prepared
0.0000079: Query parameters ready
0.0001872: No cached data for key «default/sitemap/a1d340»
0.0000310: xPDO query object created
0.0002091: Added selection of modResource: SQL_CALC_FOUND_ROWS `id`, `editedon`, `createdon`, `context_key`, `class_key`, `uri`, `content`
0.0000420: Processed additional conditions
0.0006759: Added where condition: modResource.hidemenu=0, OR:modResource.class_key:IN(Ticket,Article), modResource.published=1, modResource.deleted=0, modResource.searchable=1, modResource.context_key=web
0.0001619: Sorted by modResource.menuindex, asc
0.0009911: SQL prepared «SELECT SQL_CALC_FOUND_ROWS `modResource`.`id`, `modResource`.`editedon`, `modResource`.`createdon`, `modResource`.`context_key`, `modResource`.`class_key`, `modResource`.`uri`, `modResource`.`content` FROM `ryrc_site_content` AS `modResource` WHERE ( ( `modResource`.`hidemenu` = 0 OR `modResource`.`class_key` IN ('Ticket','Article') ) AND `modResource`.`published` = 1 AND `modResource`.`deleted` = 0 AND `modResource`.`searchable` = 1 AND `modResource`.`context_key` = 'web' ) ORDER BY modResource.menuindex asc „
0.2346210: SQL executed
0.0003691: Total rows: 12836
0.0233071: Rows fetched
0.0608480: Returning raw data
0.0150259: Created inline “modChunk» with name «d980adc1aeb51ab5c91d4c4741c276a4»
414.0271800: Rows processed
0.6068261: Saved data to cache «default/sitemap/a1d340»
0.0254791: Created inline «modChunk» with name «be75dd4b9525127c59b774f94767849c»
0.6575530: Rows wrapped
415.6537869: Total time
82 051 072: Memory usage
Комментарии: 12
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Генерируете по крону в файл, на странице sitemap.xml сниппет с примерным содержанием:
тогда для адресов страниц будет использоваться их uri, без запуска функции modX::makeUrl().
Вот лог modx.pro:
0.0000691: pdoTools loaded 0.0000439: Conditions prepared 0.0000050: Query parameters ready 0.0000920: No cached data for key «default/sitemap/13f0b2» 0.0000150: xPDO query object created 0.0000861: Added selection of modResource: SQL_CALC_FOUND_ROWS `id`, `editedon`, `createdon`, `context_key`, `class_key`, `uri`, `content` 0.0000200: Processed additional conditions 0.0002549: Added where condition: modResource.hidemenu=0, OR:modResource.class_key:IN(Ticket,Article), modResource.published=1, modResource.deleted=0, modResource.searchable=1, modResource.context_key=web 0.0000701: Sorted by modResource.menuindex, asc 0.0002680: SQL prepared «SELECT SQL_CALC_FOUND_ROWS `modResource`.`id`, `modResource`.`editedon`, `modResource`.`createdon`, `modResource`.`context_key`, `modResource`.`class_key`, `modResource`.`uri`, `modResource`.`content` FROM `b2QHetSLC6ET_site_content` AS `modResource` WHERE ( ( `modResource`.`hidemenu` = 0 OR `modResource`.`class_key` IN ('Ticket','Article') ) AND `modResource`.`published` = 1 AND `modResource`.`deleted` = 0 AND `modResource`.`searchable` = 1 AND `modResource`.`context_key` = 'web' ) ORDER BY modResource.menuindex asc „ 0.1018419: SQL executed 0.0021629: Total rows: 9786 0.0283070: Rows fetched 0.0230331: Returning raw data 0.0005159: Created inline “modChunk» with name «93a97ed9d66e351bc63bf3ddfa38f405» 0.0122530: Compiled Fenom chunk with name «modchunk/93a97ed9d66e351bc63bf3ddfa38f405» 0.1083400: Rows processed 0.0142739: Saved data to cache «default/sitemap/13f0b2» 0.0096161: Created inline «modChunk» with name «be75dd4b9525127c59b774f94767849c» 0.0241339: Rows wrapped 0.3255181: Total time 82 395 136: Memory usageВот такой вызов:
Как исправить это при использовании &scheme=`uri`?
(для выборки больших объемов страниц любых лишних операций лучше избегать)
Ну поменяете вы для главной на index.php и заморозите, при выводе у вас будет ссылка следующего вида:
Учитывая, про при переходе по uri главной страниц, MODX всё равно делает редирект, писать дополнительную проверку ровно для одной страницы лично мне не хочется.