agusluc Posted April 22, 2013 Share Posted April 22, 2013 (edited) I'm working in a new site (i'm the only visitor), is well optimized (all types of cache enable, 3 cookie-les subdomains for static content..it scores 91/100 in pingdom tools and 90/100 in google page speed). When i'm working in the site, it go really smooth, pages load almost instant, BUT if i don't visit the site for a while, lets say..1hour, then i visit the site again it takes like 15 seconds to respond (the browser get stuck in "waiting xxxx.com"), once the site respond it loads almost instant, and all my subsequent page views work perfect. I think the reason is because the filesystem cache expire and prestashop have to regenerate it, look the result of profiling: (After this first slow load, the site loads in less than 1 second (because of the cache), but as soon as the cache expires, i have this problem.) Load time: 18.898s You'd better run your shop on a toaster config: 8.46s constructor: 0ms init: 6.496s checkAccess: 0ms setMedia: 0ms postProcess: 0ms initHeader: 0ms initContent: 3.559s initFooter: 191ms display: 192ms Hook processing: 3.95s / 12.81 Mb displayHeader: 2.398s / 4.51 Mb displayTop: 794ms / 4.75 Mb displayHome: 259ms / 1.03 Mb moduleRoutes: 201ms / 1.02 Mb displayFooter: 191ms / 0.22 Mb displayRightColumn: 105ms / 1.28 Mb displayLeftColumn: 3ms / 0.01 Mb DisplayOverrideTemplate: 0ms / 0 Mb displayMyAccountBlock: 0ms / 0 Mb actionDispatcher: 0ms / 0 Mb actionFrontControllerSetMedia: 0ms / 0 Mb Memory peak usage: 26.89 Mb config: 9.14 Mb constructor: 0 Mb init: 4.76 Mb checkAccess: 0 Mb setMedia: 0 Mb postProcess: 0 Mb initHeader: 0.01 Mb initContent: 11.6 Mb initFooter: 0.24 Mb display: 0.44 Mb Total cache size (in Cache class): 0.46 Mb DB type: DbPDO SQL Queries: 183 queries Time spent querying: 1.122s Edited April 22, 2013 by agusluc (see edit history) Link to comment Share on other sites More sharing options...
chipslay Posted April 23, 2013 Share Posted April 23, 2013 It sounds like my problem which is blocklayered module eating up memory on your server. Disable that or any suspect module then try it. Link to comment Share on other sites More sharing options...
Trip Posted April 23, 2013 Share Posted April 23, 2013 Database seems to be slow too. DB type: DbPDO SQL Queries: 183 queries Time spent querying: 1.122s You can also see that displayHeader: 2.398s / 4.51 Mb . You should try to find out which module takes so long by looking at the hooks in the header and by disabling/enabling them untill you find the suspect. Link to comment Share on other sites More sharing options...
Toni Mármol Posted April 23, 2013 Share Posted April 23, 2013 What kind of cache do you use? I don't know why but I have worst perfomance with memcached enabled than disabled. Now I have force compilation disabled, cache enabled, xcache enabled and memcached disabled. All under nginx, with CDN cookieless. Times are around 1,5-2 seconds. It's not as fast I like, but it's the best I could have. Link to comment Share on other sites More sharing options...
Trip Posted April 23, 2013 Share Posted April 23, 2013 All caches except smarty cache are not working as expected so enabling them decreases performance from my experience. Template cache works great but the rest you have to figure out on your own. I am quite positive that the cache class itself has errors. Other people had worse side effects like products in BO are not updating or whatever. Response time from 1-2 seconds are ok IMO. Problem is that the category view does a lot of queries at least when you have a lot of products in in. I posted another bug report on the tracker today. Hopefully someone has the time to fix this once and for all Link to comment Share on other sites More sharing options...
El Patron Posted April 23, 2013 Share Posted April 23, 2013 consider running the phpmyadmin report on your db to look at what if any memory is allocated to db cache....in the report it will highlight in red where your mysql db could be better optimized. of course you must have access to configuration options on your server..... 1 Link to comment Share on other sites More sharing options...
Toni Mármol Posted April 23, 2013 Share Posted April 23, 2013 Trip, I would like HTML generation response times under 1 second. I have hardware and system to get this, but the bottleneck is on prestashop. A lot of studies (WPO) said this this would increase sales... Link to comment Share on other sites More sharing options...
sadlyblue Posted April 23, 2013 Share Posted April 23, 2013 Hi We have a multishop, with 5 different domains, sharing about 2500 products. Our load time is around 9-10s. Its a dedicated server, maybe not the best one. A Intel Core i5-2400, quad core, 16 GB DDR3 RAM,... I'm trying to get it lower, but still couldn't make significant changes. It gets even worst. We need to have more stores. And each stores means slower time. At least 2-3s more (as far as i tested). And we want to import about 5000 products... We are screwed Any ideas? Would it be better to abandon multishop, split them even if they stay in the same server, and design a module to connect the stocks and copy the new products from a main one to the rest of them? Thanks Pedro Link to comment Share on other sites More sharing options...
agusluc Posted April 23, 2013 Author Share Posted April 23, 2013 (edited) Database seems to be slow too. DB type: DbPDO SQL Queries: 183 queries Time spent querying: 1.122s You can also see that displayHeader: 2.398s / 4.51 Mb . You should try to find out which module takes so long by looking at the hooks in the header and by disabling/enabling them untill you find the suspect. yes, the database is a bit overloaded, i had to talk with my hosting provider about that. But if u look, the loading time of config and init is almost the 80% of the load time. I disable allmost all the modules, i'm running just the bare basics (categories, features products, permanent links, cart and pay plataforms.). I think that a few as said here, the problem is the cache. Those slow load times only happen the first time that someone visit the page after a while of inactivity, my guess is that the regeneration of the cache (plus an slow sql server) is the problem here, because all the subsquent visits load the pages load in less than a 1 second. This are the times of a 2nd load: Load time: 610ms I hope it is a shared hosting config: 163ms constructor: 0ms init: 37ms checkAccess: 0ms setMedia: 0ms postProcess: 0ms initHeader: 0ms initContent: 309ms initFooter: 20ms display: 81ms Hook processing: 338ms / 11.93 Mb displayTop: 134ms / 4.87 Mb displayHeader: 102ms / 4.5 Mb displayHome: 58ms / 0.98 Mb displayFooter: 20ms / 0.15 Mb displayRightColumn: 12ms / 0.58 Mb moduleRoutes: 9ms / 0.85 Mb displayLeftColumn: 2ms / 0.01 Mb DisplayOverrideTemplate: 0ms / 0 Mb actionDispatcher: 0ms / 0 Mb actionFrontControllerSetMedia: 0ms / 0 Mb As you can see, once the cache is generated, the site go really fast, but as soon as the cache expires, the next visit will have an extremely slow load time It gets even worst. We need to have more stores. And each stores means slower time. At least 2-3s more (as far as i tested). And we want to import about 5000 products... We are screwed i think u should develepor your own system, prestashop is designed for small-medium stores, the scale of your site is too big for prestashop in my opinion. My advice: take symphony 2 framework and code your own system. You should also check for the optimizations in your dedicated server Edited April 23, 2013 by agusluc (see edit history) Link to comment Share on other sites More sharing options...
El Patron Posted April 23, 2013 Share Posted April 23, 2013 (edited) this might help http://www.howtogeek...-query-caching/ using phpmyadmin http://screencast.com/t/bUYtrujANOt Edited April 23, 2013 by elpatron (see edit history) 1 Link to comment Share on other sites More sharing options...
agusluc Posted April 23, 2013 Author Share Posted April 23, 2013 (edited) the mysql cache is enable @elpatron. Now i have a more big problem, on my attemps to optimize the store, i was disabling/enabling modules but at some point the smarty cache got broken and now can't get it work. If i enable the smarty cache i got this error in all categories/product page: Fatal error: Function name must be a string in /home/xxx/public_html/prestashop/tools/smarty/sysplugins/smarty_internal_templatebase.php on line 281 I tried all posible configuration for smarty (enable, disable, force recompile, recompile only if template changed, etc) NOTHING WORK, i cleaned up the cache files from the ftp, didn't work. Prestashop is putting my patience to the test Edited April 23, 2013 by agusluc (see edit history) Link to comment Share on other sites More sharing options...
Trip Posted April 24, 2013 Share Posted April 24, 2013 First of all, imo is debug profiling to find serious bugs. I understand that it bypasses the build in query cache from mysql. That has not to much todo with the actual performance. If you want to benchmark use apache bench or websites like http://www.webpagetest.org/ to find out how you site is performing under stress or from a visitors view. At sadlyblue ... I wonder that the performance decrease is so significant. IMO it should not make a big difference if you have 3 or 5 shops except you have so many visitors that the server is swapping. I am quite positive that a shared hosting is not a good choice for such a setup. I just made a test with 3 multishop 2000 products but in 4 languages and response time is still under 2 seconds. 16 GB can mean nothing if the database cache is 1 MB. The standard MySLQ config is for really small servers. I monitored the mysql memory footage and had to increase e.g. Innodb cache to 600MB and tuned myisam caches. When you are on a shared hosting you can only hope that the hoster cares about that and monitors the servers but I guess they only use a standart tuning as otherwise you have to find for every server the right config which is time consuming so my advice change hosting to a provider which is specialized for PS hosting or get a root box and build a server for your needs. Link to comment Share on other sites More sharing options...
prestashopninja Posted April 24, 2013 Share Posted April 24, 2013 Hello, I have recently launched a speed booster module which seems to be a perfect fit for you. The module is coded with solely PrestaShop software lifecycle in mind and you can enable/disable caching per hook/module basis. You may download a one day free trial over here and see it for yourself. Link to comment Share on other sites More sharing options...
sadlyblue Posted April 25, 2013 Share Posted April 25, 2013 At sadlyblue ... I wonder that the performance decrease is so significant. IMO it should not make a big difference if you have 3 or 5 shops except you have so many visitors that the server is swapping. I am quite positive that a shared hosting is not a good choice for such a setup. I just made a test with 3 multishop 2000 products but in 4 languages and response time is still under 2 seconds. 16 GB can mean nothing if the database cache is 1 MB. The standard MySLQ config is for really small servers. I monitored the mysql memory footage and had to increase e.g. Innodb cache to 600MB and tuned myisam caches. When we changed to a dedicated server, we divided into 4 stores. And it was fast. I have no benchmark from then. but maybe 3-4 seconds. Only when we created another store we started having problems. I think it's a coincidence... It can only be, even if it added 1/5 of the current DB if wouldn't make that difference... The fact is in a subdomain, i created a total of 7 stores, and with the same settings, it's even slower than this, getting 12s load time. Btw, we've disabled all, or almost all stats gathering. but still, our store can't lower than the 5-7 seconds... We want it to be around 2-4 seconds. It's a long way to go. Link to comment Share on other sites More sharing options...
sadlyblue Posted April 25, 2013 Share Posted April 25, 2013 Hello, I have recently launched a speed booster module which seems to be a perfect fit for you. The module is coded with solely PrestaShop software lifecycle in mind and you can enable/disable caching per hook/module basis. You may download a one day free trial over here and see it for yourself. We may give it a try. Thanks for the info. One question, how is it different than the cache from PS, a part from being able to select modules to cache? Link to comment Share on other sites More sharing options...
prestashopninja Posted April 25, 2013 Share Posted April 25, 2013 (edited) Hello again, One question, how is it different than the cache from PS, a part from being able to select modules to cache? Simply put, PS cache's approach is to cache the repeating queries, may it be in the core or in the modules, while my module takes a different approach and it caches the module outputs, directly as static HTML. This also means you may use in the mean time, both PS filesystem cache and my speed booster and benefit from them. On the other hand, as @Trip and yourself have pointed out, especially the huge amount of time spent for config made me think of multi store issues. Normally, multi store wouldn't affect the speed that much and probably any expert would need to investigate it further, before coming to a conclusion there. My module surely will save you most of the 3.95 secs spent for hook processing, however you will still be left with a load time of 15 seconds, which is of course, not acceptable for any webshop. Edited April 25, 2013 by prestashopninja (see edit history) Link to comment Share on other sites More sharing options...
agusluc Posted April 26, 2013 Author Share Posted April 26, 2013 @prestahsopninja Do u have any idea what can be affecting the load time of config and init? those 18s are killing me and i run out of ideas Link to comment Share on other sites More sharing options...
prestashopninja Posted April 26, 2013 Share Posted April 26, 2013 @agusluc: regarding the load time for config and init: This might be caused by virtually anything. I am sorry not to be able to help you further there, without having a look at the entire installation. However: Fatal error: Function name must be a string in/home/xxx/public_html/prestashop/tools/smarty/sysplugins/smarty_internal_templatebase.php on line 281 This is the place where the templates are actually rendered. So, it is quite safe to say your smarty problem is sourced by the theme. Give it a try once, with the default theme and it will probably work. After having that checked, you could attach your theme's product.tpl here so we could locate the error there. Link to comment Share on other sites More sharing options...
YachtPaintShop Posted August 22, 2013 Share Posted August 22, 2013 I am gutted, because while reading this post i turned off all cache on our site and it runs smoothly now (went from (~10 secs / page to 2-3 secs / page). Still long but turning off cache did it here... 2 Link to comment Share on other sites More sharing options...
Mel Byron Posted August 24, 2013 Share Posted August 24, 2013 You could try zip compression - add this line to shop/index.php: if (substr_count($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip')) ob_start("ob_gzhandler"); else ob_start(); above the line: require(dirname(__FILE__).'/config/config.inc.php'); According to the GIDNetwork compression tester ( http://www.gidnetwork.com/tools/gzip-test.php ) my product detail pages have reduced from 114KB to 16KB. This is not a complete cure for slow response times, but page changes should be about 20% faster. It also helps the Backend pages, I have added the same line to adminxxxx/index.php, above $timer_start = microtime(true); 1 Link to comment Share on other sites More sharing options...
cutecat Posted August 27, 2013 Share Posted August 27, 2013 I am gutted, because while reading this post i turned off all cache on our site and it runs smoothly now (went from (~10 secs / page to 2-3 secs / page). Still long but turning off cache did it here... that is also what i did and it become faster! now it's 1 to 2 secs of TTFB!!! Great News for me! 1 Link to comment Share on other sites More sharing options...
mauroagr Posted September 2, 2013 Share Posted September 2, 2013 Dear, I have one strange situation. When i access from chrome, in my PC are slow...slow, initContent: 9.482s; When i access from IE, in same pc, are fast, initContent: 258ms; In others PC in same network, are fast, fast. Any have the same situation, have one cache or other problem to check this. Thanks Mauro Link to comment Share on other sites More sharing options...
Mel Byron Posted September 29, 2013 Share Posted September 29, 2013 Hi all, I've had some success in improving the response time of my shop (1.5.4.0), in my case the problem was in the database calls made by Best Sellers and New Products. In my shop these are blocks in the side panels, so every page was painfully slow. Adding two new functions has improved matters considerably, the TTFB has dropped from about 11 seconds to under 3 seconds. The functions getBestSalesLight and getNewProducts identify product IDs by collecting information from the database, then selecting the required IDs. It's much more efficient to do this in two passes: once to get the product IDs, then again to collect the information for these IDs. This is how it's done: 1. Best Sellers (1a) add the new function getBestSalesLightRapid to classes/ProductSale.php: /** Get best sales rapidly* identifies best sellers for block in right panel* called by modules/blockbestsellers/blockbestsellers.php**/public static function getBestSalesLightRapid($id_lang, $page_number = 0, $nb_products = 10,$id_category = 0, Context $context = null){if (!$context)$context = Context::getContext();if ($page_number < 0) $page_number = 0;if ($nb_products < 1) $nb_products = 10;$groups = FrontController::getCurrentCustomerGroups();$sql_groups = (count($groups) ? 'IN ('.implode(',', $groups).')' : '= 1');$sql = "SELECT p.id_product, ps.`quantity`AS salesFROM `ps_product_sale` psLEFT JOIN `ps_product` p ON ps.`id_product` = p.`id_product`WHERE p.`active` = 1 AND p.`visibility` != 'none' AND p.`id_product`IN ( SELECT cp.`id_product`FROM `ps_category_group` cgLEFT JOIN `ps_category_product` cp ON (cp.`id_category` = ".$id_category.")WHERE cg.`id_group` IN (3) )ORDER BY salesDESC LIMIT 0, 5";/* the above code is for Bestseller per Category, for overall Best Sellers replace line 8: *//* LEFT JOIN `ps_category_product` cp ON (cp.`id_category` = cg.`id_category`) */if (!$result = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS($sql))return false;$rapidprodids = "";foreach ($result as $row)$rapidprodids .= $row['id_product'].",";/* trim trailing comma */$lastcommapos = strlen($rapidprodids) - 1;$rapidprodids = substr($rapidprodids, 0, $lastcommapos);$sql = "SELECT p.id_product, pl.`link_rewrite`, pl.`name`, pl.`description_short`,image_shop.`id_image`, il.`legend`, ps.`quantity`AS sales, p.`ean13`, p.`upc`, cl.`link_rewrite`AS categoryFROM `ps_product_sale` psLEFT JOIN `ps_product` p ON ps.`id_product` = p.`id_product`INNER JOIN ps_product_shop product_shop ON (product_shop.id_product = p.id_product)LEFT JOIN `ps_product_lang` pl ON p.`id_product` = pl.`id_product` AND pl.`id_lang` = 1LEFT 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 ANDimage_shop.cover=1)LEFT JOIN `ps_image_lang` il ON (i.`id_image` = il.`id_image` AND il.`id_lang` = 1)LEFT JOIN `ps_category_lang` cl ON cl.`id_category` = product_shop.`id_category_default`AND cl.`id_lang` = 1WHERE p.id_product IN (".$rapidprodids.")";If (!$result = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS($sql))return false;foreach ($result as &$row){$row['link'] = $context->link->getProductLink($row['id_product'], $row['link_rewrite'],$row['category'], $row['ean13']);$row['id_image'] = Product::defineProductImage($row, $id_lang);}return $result;} (1b) in modules/bestsellers/bestsellers.php (about line 140) replace ProductSale::getBestSalesLight with ProductSale::getBestSalesLightRapid 2. New Products (2a) add the new function getNewProductsRapid to classes/Product.php: /** Get new products rapidly* identifies new products for block in left panel* called by modules/blocknewproducts/blocknewproducts.php**/public static function getNewProductsRapid($id_lang, $page_number = 0, $nb_products = 10,$count = false, $order_by = null, $order_way = null, Context $context = null){$sql = new DbQuery();$sql = "SELECT p.*, product_shop.*FROM `ps_product` pLEFT JOIN ps_product_shop product_shop ON (product_shop.id_product = p.id_product)WHERE (product_shop.`active` = 1) AND ( DATEDIFF( product_shop.`date_add`,DATE_SUB(NOW(), INTERVAL 180 DAY ) ) > 0)ORDER BY p.`date_add` DESC LIMIT ".$nb_products;$result = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS($sql);if (!$result)return false;$rapidprodids = "";foreach ($result as $row)$rapidprodids .= $row['id_product'].",";/* trim trailing comma */$lastcommapos = strlen($rapidprodids) - 1;$rapidprodids = substr($rapidprodids, 0, $lastcommapos);$sql = new DbQuery();$sql = "SELECT p.*, product_shop.*, stock.out_of_stock,IFNULL(stock.quantity, 0) as quantity, pl.`description`, pl.`description_short`, pl.`link_rewrite`,pl.`meta_description`, pl.`meta_keywords`, pl.`meta_title`, pl.`name`, image_shop.`id_image`,il.`legend`, m.`name`AS new, product_attribute_shop.id_product_attribute id_product_attributeFROM `ps_product` pINNER JOIN ps_product_shop product_shop ON (product_shop.id_product = p.id_product)LEFT JOIN `ps_product_lang` `pl` ON p.`id_product` = pl.`id_product` AND pl.`id_lang` = 1LEFT 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)LEFT JOIN `ps_image_lang` `il` ON i.`id_image` = il.`id_image` AND il.`id_lang` = 1LEFT JOIN `ps_manufacturer` `m` ON m.`id_manufacturer` = p.`id_manufacturer`LEFT OUTER 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 ANDproduct_attribute_shop.default_on = 1)LEFT JOIN ps_stock_available stock ON (stock.id_product = p.id_product ANDstock.id_product_attribute = IFNULL(`product_attribute_shop`.id_product_attribute, 0))WHERE p.id_product IN (".$rapidprodids.")";$result = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS($sql);if (!$result)return false;$products_ids = array();foreach ($result as $row)$products_ids[] = $row['id_product'];Product::cacheFrontFeatures($products_ids, $id_lang);return Product::getProductsProperties((int)$id_lang, $result);} (2b) in modules/blocknewproducts/blocknewproducts.php (about line 100) replace Product::getNewProducts with Product::getNewProductsRapid Bonne chance Mel. 1 Link to comment Share on other sites More sharing options...
mauroagr Posted September 30, 2013 Share Posted September 30, 2013 I find my problem. Was a Module from shipping agent in brazil that try conect in webservice to get prices, and then go slow...slow the all site. Thanks for all. 1 Link to comment Share on other sites More sharing options...
gray Posted December 21, 2013 Share Posted December 21, 2013 I am gutted, because while reading this post i turned off all cache on our site and it runs smoothly now (went from (~10 secs / page to 2-3 secs / page). Still long but turning off cache did it here... Might sound a stupid question, but how do I turn off cache ?? and where. My site takes over 60 secs to load www.gb-online.co.uk/prestashop progresively getting longer and longer. Or any other ideas please. Link to comment Share on other sites More sharing options...
Jenetic Posted March 22, 2014 Share Posted March 22, 2014 I am gutted, because while reading this post i turned off all cache on our site and it runs smoothly now (went from (~10 secs / page to 2-3 secs / page).Still long but turning off cache did it here... I'm using 1.5.6.0.I read this post because I've tried everything to optimize both the front and back office which from time to time runs very slow.Load time in BO was at its best 14s, in Front even worse.I tried turning off both smarty cache and disabled the caching system.The load time changed to 1-3s in BO immediately! And the Front got really fast as well.So thank you so much for that tip!! Might sound a stupid question, but how do I turn off cache ?? and where. My site takes over 60 secs to load www.gb-online.co.uk/prestashop progresively getting longer and longer. Or any other ideas please. I'm sure you've found it already, prestashop aint THAT big that it would take you 3 months to find it lol!But maybe someone else needs to know: you find the cache settings under Advanced Parameters > Performance. Link to comment Share on other sites More sharing options...
razvypp Posted January 4, 2015 Share Posted January 4, 2015 How can i get the statistic posted by "agusluc" on the first post? I have a similar problem with www.plantum.ro, the php is generated very slowly... in 6 seconds. Load time: 18.898s You'd better run your shop on a toaster config: 8.46s constructor: 0ms init: 6.496s checkAccess: 0ms setMedia: 0ms postProcess: 0ms initHeader: 0ms initContent: 3.559s initFooter: 191ms display: 192ms Hook processing: 3.95s / 12.81 Mb displayHeader: 2.398s / 4.51 Mb displayTop: 794ms / 4.75 Mb displayHome: 259ms / 1.03 Mb moduleRoutes: 201ms / 1.02 Mb displayFooter: 191ms / 0.22 Mb displayRightColumn: 105ms / 1.28 Mb displayLeftColumn: 3ms / 0.01 Mb DisplayOverrideTemplate: 0ms / 0 Mb displayMyAccountBlock: 0ms / 0 Mb actionDispatcher: 0ms / 0 Mb actionFrontControllerSetMedia: 0ms / 0 Mb Memory peak usage: 26.89 Mb config: 9.14 Mb constructor: 0 Mb init: 4.76 Mb checkAccess: 0 Mb setMedia: 0 Mb postProcess: 0 Mb initHeader: 0.01 Mb initContent: 11.6 Mb initFooter: 0.24 Mb display: 0.44 Mb Total cache size (in Cache class): 0.46 Mb DB type: DbPDO SQL Queries: 183 queries Time spent querying: 1.122s Link to comment Share on other sites More sharing options...
razvypp Posted January 4, 2015 Share Posted January 4, 2015 found the answer, you must set define('_PS_DEBUG_PROFILING_', true); Link to comment Share on other sites More sharing options...
apachebooster Posted January 20, 2015 Share Posted January 20, 2015 One of the easiest and best method to enhance the speed of the server would be to install a cpanel pluggin called "Apachebooster". This would speed up the dynamic page loading time and reduce the server load More info may be found from here : Speed Up PrestaShop Link to comment Share on other sites More sharing options...
Dh42 Posted January 20, 2015 Share Posted January 20, 2015 Set up two accounts at a hosting provider, the exact same level accounts, one with the module installed and the other with it not installed and lets do a load test on it. Link to comment Share on other sites More sharing options...
domorodecmezilidmi Posted January 21, 2015 Share Posted January 21, 2015 (edited) consider running the phpmyadmin report on your db to look at what if any memory is allocated to db cache....in the report it will highlight in red where your mysql db could be better optimized. of course you must have access to configuration options on your server..... thanks for advice Edited January 21, 2015 by domorodecmezilidmi (see edit history) Link to comment Share on other sites More sharing options...
domorodecmezilidmi Posted January 21, 2015 Share Posted January 21, 2015 You could try zip compression - add this line to shop/index.php: if (substr_count($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip')) ob_start("ob_gzhandler"); else ob_start(); above the line: require(dirname(__FILE__).'/config/config.inc.php'); According to the GIDNetwork compression tester ( http://www.gidnetwork.com/tools/gzip-test.php ) my product detail pages have reduced from 114KB to 16KB. This is not a complete cure for slow response times, but page changes should be about 20% faster. It also helps the Backend pages, I have added the same line to adminxxxx/index.php, above $timer_start = microtime(true); Awesome solution, will try..thx. 1 Link to comment Share on other sites More sharing options...
domorodecmezilidmi Posted January 22, 2015 Share Posted January 22, 2015 I'm using 1.5.6.0. I read this post because I've tried everything to optimize both the front and back office which from time to time runs very slow. Load time in BO was at its best 14s, in Front even worse. I tried turning off both smarty cache and disabled the caching system. The load time changed to 1-3s in BO immediately! And the Front got really fast as well. So thank you so much for that tip!! I'm sure you've found it already, prestashop aint THAT big that it would take you 3 months to find it lol! But maybe someone else needs to know: you find the cache settings under Advanced Parameters > Performance. Hi man, I have tried - just for curiosity and for me whether I turn off caches - I mean ALL - my time is about 1,5 seconds worse so I am not sure if cache is bad. You know.. Link to comment Share on other sites More sharing options...
tashkas Posted May 1, 2015 Share Posted May 1, 2015 slow site respond can be missing apache2 module libapache2-mod-auth-mysql, after it my sites improved. Link to comment Share on other sites More sharing options...
ariopars Posted May 12, 2015 Share Posted May 12, 2015 How can i get the statistic posted by "agusluc" on the first post? I have a similar problem with www.plantum.ro, the php is generated very slowly... in 6 seconds. Load time: 18.898s You'd better run your shop on a toaster config: 8.46s constructor: 0ms init: 6.496s checkAccess: 0ms setMedia: 0ms postProcess: 0ms initHeader: 0ms initContent: 3.559s initFooter: 191ms display: 192ms Hook processing: 3.95s / 12.81 Mb displayHeader: 2.398s / 4.51 Mb displayTop: 794ms / 4.75 Mb displayHome: 259ms / 1.03 Mb moduleRoutes: 201ms / 1.02 Mb displayFooter: 191ms / 0.22 Mb displayRightColumn: 105ms / 1.28 Mb displayLeftColumn: 3ms / 0.01 Mb DisplayOverrideTemplate: 0ms / 0 Mb displayMyAccountBlock: 0ms / 0 Mb actionDispatcher: 0ms / 0 Mb actionFrontControllerSetMedia: 0ms / 0 Mb Memory peak usage: 26.89 Mb config: 9.14 Mb constructor: 0 Mb init: 4.76 Mb checkAccess: 0 Mb setMedia: 0 Mb postProcess: 0 Mb initHeader: 0.01 Mb initContent: 11.6 Mb initFooter: 0.24 Mb display: 0.44 Mb Total cache size (in Cache class): 0.46 Mb DB type: DbPDO SQL Queries: 183 queries Time spent querying: 1.122s hi dear please help me... how to generate this report? im using shared hosting and my problem is : waiting time in loading. after about 8-15S site load complet. my prestashop V : 1.5.6.2 persian editon. http://www.manastamp.ir Link to comment Share on other sites More sharing options...
factorypolaris Posted October 20, 2016 Share Posted October 20, 2016 I had this issue after migrating to a new server. I moved to a dedicated server with twice the horsepower and the public facing side of the site was running 20 second load times, and super high CGI CPU. Running on IIS, you need to update all the file/folder permissions. Ensure your IIS user has read, write and modify permission. The modify was the ticket as PS was not able to delete certain file. Link to comment Share on other sites More sharing options...
Recommended Posts