Тормозит страница корзины.
На сайте около 50 тыс. позиций. При открытии страницы корзины создается порядка 10000 sql запросов, время создания страницы около 40 секунд.
Необходимо исправить корзину, чтобы время формирования было не более 4 секунд. В идеале менее 1 секунды.
Информация из отладки:
Время генерации: 37.259734153748 сек.
Всего запросов: 9116, время: 1.8260169493484 сек. (4.9%)
Основная часть запросов похожа друг на друга:
1) Порядка 300 запросов, меняется только "BE.ID":
SELECT L.DIR as LANG_DIR, BE0.ID as PROPERTY_31_ID, BE0.CODE as PROPERTY_31_CODE, BE0.XML_ID as PROPERTY_31_XML_ID, BE0.IBLOCK_ID as PROPERTY_31_IBLOCK_ID, BE0.IBLOCK_SECTION_ID as PROPERTY_31_IBLOCK_SECTION_ID
FROM
b_iblock B
INNER JOIN b_lang L ON B.LID=L.LID
INNER JOIN b_iblock_element BE ON BE.IBLOCK_ID = B.ID
LEFT JOIN b_iblock_property FP0 ON FP0.IBLOCK_ID = B.ID AND FP0.ID=31
LEFT JOIN b_iblock_element_property FPV0 ON FPV0.IBLOCK_PROPERTY_ID = FP0.ID AND FPV0.IBLOCK_ELEMENT_ID = BE.ID
LEFT JOIN b_iblock_element BE0 ON BE0.ID = FPV0.VALUE_NUM AND ((BE.WF_STATUS_ID=1 AND BE.WF_PARENT_ELEMENT_ID IS NULL))
WHERE
1=1 AND ( ((((BE.IBLOCK_ID = '3')))) AND ((((BE.ID = '43')))) ) AND (((BE.WF_STATUS_ID=1 AND BE.WF_PARENT_ELEMENT_ID IS NULL)))
2) Порядка 8500 запросов, меняется только "BS.ID":
SELECT BS.ID AS ID, BS.CODE AS CODE, BS.IBLOCK_SECTION_ID AS IBLOCK_SECTION_ID
FROM
b_iblock_section BS
INNER JOIN b_iblock B ON B.ID = BS.IBLOCK_ID
WHERE
BS.ID=7466
Опубликован 29.03.2017 в 22:59