Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Prestashop类别页面加载太慢_Php_Mysql_E Commerce_Prestashop - Fatal编程技术网

Php Prestashop类别页面加载太慢

Php Prestashop类别页面加载太慢,php,mysql,e-commerce,prestashop,Php,Mysql,E Commerce,Prestashop,我已经更新了网店从1.4到1.5的最新版本,但我有一些奇怪的问题。当我加载一个特定的类别页面,其中产品有不同的功能时,它会加载近10秒 慢装类别:(80多种产品) 正常装载类别:(300多种产品) 9044.962毫秒 SELECT SQL_NO_CACHE p.*, product_shop.*, stock.out_of_stock, IFNULL(stock.quantity, 0) AS quantity, MAX(product_

我已经更新了网店从1.4到1.5的最新版本,但我有一些奇怪的问题。当我加载一个特定的类别页面,其中产品有不同的功能时,它会加载近10秒

慢装类别:(80多种产品)

正常装载类别:(300多种产品)

9044.962毫秒

SELECT SQL_NO_CACHE p.*,
       product_shop.*,
       stock.out_of_stock,
       IFNULL(stock.quantity, 0) AS quantity,
       MAX(product_attribute_shop.id_product_attribute) id_product_attribute,
       product_attribute_shop.minimal_quantity AS product_attribute_minimal_quantity,
       pl.`description`,
       pl.`description_short`,
       pl.`available_now`,
       pl.`available_later`,
       pl.`link_rewrite`,
       pl.`meta_description`,
       pl.`meta_keywords`,
       pl.`meta_title`,
       pl.`name`,
       MAX(image_shop.`id_image`) id_image,
       il.`legend`,
       m.`name` AS manufacturer_name,
       cl.`name` AS category_default,
       DATEDIFF(product_shop.`date_add`, DATE_SUB(NOW(), INTERVAL 30 DAY)) > 0 AS NEW,
                                                                             product_shop.price AS orderprice
FROM `ps_category_product` cp
LEFT JOIN `ps_product` p ON p.`id_product` = cp.`id_product`
INNER JOIN ps_product_shop product_shop ON (product_shop.id_product = p.id_product
                                            AND product_shop.id_shop = 1)
LEFT JOIN `ps_product_attribute` pa ON (p.`id_product` = pa.`id_product`)
LEFT JOIN ps_product_attribute_shop product_attribute_shop ON (product_attribute_shop.id_product_attribute = pa.id_product_attribute
                                                               AND product_attribute_shop.id_shop = 1
                                                               AND product_attribute_shop.`default_on` = 1)
LEFT JOIN ps_stock_available stock ON (stock.id_product = p.id_product
                                       AND stock.id_product_attribute = IFNULL(`product_attribute_shop`.id_product_attribute, 0)
                                       AND stock.id_shop = 1)
LEFT JOIN `ps_category_lang` cl ON (product_shop.`id_category_default` = cl.`id_category`
                                    AND cl.`id_lang` = 6
                                    AND cl.id_shop = 1)
LEFT JOIN `ps_product_lang` pl ON (p.`id_product` = pl.`id_product`
                                   AND pl.`id_lang` = 6
                                   AND pl.id_shop = 1)
LEFT JOIN `ps_image` i ON (i.`id_product` = p.`id_product`)
LEFT JOIN ps_image_shop image_shop ON (image_shop.id_image = i.id_image
                                       AND image_shop.id_shop = 1
                                       AND image_shop.cover=1)
LEFT JOIN `ps_image_lang` il ON (image_shop.`id_image` = il.`id_image`
                                 AND il.`id_lang` = 6)
LEFT JOIN `ps_manufacturer` m ON m.`id_manufacturer` = p.`id_manufacturer`
WHERE product_shop.`id_shop` = 1
  AND cp.`id_category` = 103
  AND product_shop.`active` = 1
  AND product_shop.`visibility` IN ("both",
                                    "catalog")
GROUP BY product_shop.id_product
ORDER BY p.`date_add` ASC LIMIT 0,25
在/var/www/web1080/html/vikav/classes/Category.php:659中

使用文件排序-浏览2544行

也许有人可以帮我优化这个查询,或者只是指出问题所在


最重要的是,prestashop中的一个大问题是糟糕的缓存管理系统,它几乎总是同时进行写入和读取

但是,对于您来说,最好的解决方案仍然是启用和优化此缓存。尝试启用默认设置,如果可以的话,添加apc

如果您的产品不需要太多更改(比如一天内多次),也可以尝试将SQL\u NO\u缓存更改为SQL\u缓存