Portal Engine Questions on portal engine and web parts.
Version 5.x > Portal Engine > Perfomance Problem View modes: 
User avatar
Member
Member
abi-b2 - 7/7/2011 9:41:06 AM
   
Perfomance Problem
Hy there,

i got a big problem. I have a Kentico Installation and about 12000 Products in our webshop. If i open a page, and it doesn't matter if it is a static or product page the loading times are horrible.

I have set content caching to 10 Minutes, refer all imagefiles directly from disk and tested all the tricks about performance optimizing found in the internet.

But nothing changed.

If i set kentico debugging options i see that an OnInit-Call always need about 2 seconds to finish. My idea is, that this is a kenticoside-problem because of the large amount of pages and building the menu or simply parsing the memory for building the menu.

Does anyone has experiences with that kind of large pages and can tell me some tricks?

Thanks a lot for responding.

Arne

User avatar
Member
Member
lancetek - 7/7/2011 10:18:17 AM
   
RE:Perfomance Problem
Hi,
We need more info to help you diagnose your problem. Try using a profiling tool like Red Gate profiler to examine your code. The profiling tool will tell you *exactly* what calls and code branches are taking the most time. Then you can identify what you need to speed up.

Lance

User avatar
Kentico Support
Kentico Support
kentico_jurajo - 7/7/2011 11:57:03 PM
   
RE:Perfomance Problem
Hi,

IS it possible to see your web site to check this issue? Does this happen on every page load or just for the first one (when the data are not cached)?
Could you please make sure your application is running and it is not being restarted to often - then the first start and first page load can take pretty long time.

Are you using also any partial caching options?

More details about your setup would be much appreciated.

Best regards,
Juraj Ondrus

User avatar
Member
Member
abi-b2 - 7/12/2011 12:38:19 PM
   
RE:Perfomance Problem
Hi,

we have the Page in the Internet and it is reachable here: http://213.252.161.120/cosag

I have tried finding the lack by Using Memory Profiler, Perfomance Profile and Database Deadlock Finder. But no result. I think the main Problem is the Mass of pages that are parsed by building the menu. If i delete all the pages in the shop-area, the response times are nearly ok. The Database Calls inside the Shop-Pages are now recuded to only 2 per Page with a time of running of about 400 Milliseconds. But if i set debugging options inside Kentico to true i see that only the OnInit-Duration of each Page is about 2-4 seconds. Is this a Kentico Problem and does anyone know this?

I have also tried using CacheItem Settings and PartialCaching like described in many Performance Tips Guidelines, but there is also no positive Result.

Thanks so far.

User avatar
Member
Member
lancetek - 7/12/2011 6:27:26 PM
   
RE:Perfomance Problem
I just went to the site and it doesn't seem terribly slow... page load times are 4-6 seconds. On what page are you getting the terrible times? I did testing on the http://213.252.161.120/cosag/PRODUKTE/8857/9102/9887.ASPX page, it'a bit large, 483.9KB, and there are a few optimizations you could do to speed it up.

Please give more detail about your problem - is 4-6 seconds to load a page acceptable to you? ie: Exactly what problems are you seeing, and what is your expectation?

'...product page the loading times are terrible...' is not accurate enough to identify your expectation. Try something more like: 'When I browse to the home page and then to a category page and then to the product page (eg: http://213.252.161.120/cosag/PRODUKTE/8857/9102/9887.ASPX), the product page takes about 8 seconds to load, and that's horrible. I expect loading times to be under 2 seconds.'

tip: run YSlow on your pages to see obvious ways to speed things up. eg: minimize your js and css, use a CDN, merge your js and css to reduce http requests, there are broken image tags, use sprites etc.

FYI - Kentico caching is pretty awesome. I usually get at *least* double the throughput when I cache pages or partially cache controls.

The very first page always takes a while for an asp.net application, as the application has to be compiled and loaded into memory, there's not really an easy way around this, other than to not recycle your app pool very often. If you are using shared hosting, use a service like Pingdom to access your site every 5min to keep it 'alive' so that your shared host doesn't automatically shut down your app pool to conserve resources.


Cheers,
Lance

User avatar
Member
Member
abi-b2 - 7/13/2011 2:12:26 AM
   
RE:Perfomance Problem
Hy Lance,

our goal is to get response times under one second but under 2 seconds is a k.o. criteria.

We actually have an own developed shop in php and the main fact of buying in our shop we were told by our customers is our speed. So if we plan to migrate to our kentico shop the customers expect nearly the same speed.

I used a lot of tools in the last weeks, also yslow and see, that there are a even some perfomance optimizing parts.

I also changed the site to show debug information and i think the appended image shows the main part of my problems. User image

Do you now unterstand my problem?

Bye ABI

User avatar
Kentico Support
Kentico Support
kentico_jurajo - 7/13/2011 3:13:11 AM
   
RE:Perfomance Problem
Hi,

We understand your problem but to find the cause we need more information than just the page load is terrible and OnInit takes 2 seconds.

Is that the first page load? What are the times when you refresh the page? Is the load still that slow?

What caching options do you use, if any?
Have you checked the SQL debug in Kentico to check which queries are taking most of the time and what amount of data is being returned?

You mentioned a menu web part - is is set correctly to pull only data that are actually displayed? It is very often that menu and listing web parts are not set correctly and are pulling big amount of data to the dataset but only 10% of them are actually displayed on the page.

What other web parts are used?

I browsed your site and the times vere about 4-5 seconds, however the pages are pretty big - about 400-500KB - so this take some time to load. Have you tried to reduce the image size and the other suggestion mentioned by Lance? Morever, below are several links about how to improve the performance and optimize your Kentico site, please take a look:

http://devnet.kentico.com/docs/devguide/sql_queries_debugging.htm

http://devnet.kentico.com/docs/devguide/threads_debugging.htm

http://devnet.kentico.com/Blogs/Martin-Hejtmanek/January-2010/Debugging-options-in-Kentico-CMS-5-0.aspx

http://devnet.kentico.com/Blogs/Martin-Hejtmanek/August-2008/Performance-of-Kentico-CMS.aspx

http://devnet.kentico.com/Blogs/Martin-Hejtmanek/October-2009/Webinar-2---Performance-optimization-and-caching-i.aspx

http://devnet.kentico.com/docs/devguide/caching_options.htm

http://devnet.kentico.com/Blogs/Martin-Hejtmanek/April-2009/Deep-Dive---Kentico-CMS-Caching.aspx

http://devnet.kentico.com/Blogs/Martin-Hejtmanek/January-2010/Optimization-tip--Write-better-code,-disable-Outpu.aspx

http://devnet.kentico.com/Blogs/Martin-Hejtmanek/December-2009/Optimization-tip--Speed-up-your-images-and-files.aspx

http://devnet.kentico.com/Blogs/Martin-Hejtmanek/December-2009/Tip--Is-your-menu-and-controls-cache-settings-effi.aspx

www.kevinleary.net/testing-page-load-speed-with-firebug

Best regards,
Juraj Ondrus

User avatar
Member
Member
lancetek - 7/13/2011 9:47:15 AM
   
RE:Perfomance Problem
To clarify: The page LOAD time for me was 4-6 seconds. The RESPONSE time is well under 2 seconds. I'm getting the initial html in 793ms, including wait time.

Re caching:
I just did a full-page cache on a current site we are developing. The home page was taking 4-6 seconds to create the html and deliver it to the browser un-cached. This is not including any of the resource files, just the initial html request. With full-page caching on, the same action takes 103ms to be delivered (waiting time and transfer), a 40x speed increase!

The entire page takes about 1sec to transfer. And we haven't yet minified the js and css, merged common images into sprites or started on using a CDN. We should be able to get down into the ~200ms range when all the resource perf tweaks are done.

Lance

User avatar
Member
Member
abi-b2 - 7/13/2011 10:02:45 AM
   
RE:Perfomance Problem
Hy Lance,

do you think you can optimize our page to get faster load times?

If yes i will give you the Administrator Account Information by mail.

The full page caching is well for static pages but in our case we only have a small amount of static pages and a big amount of dynamic content. So all our Shop Pages contains dynamic content.

if you can help us, please send me an email to abi@b2-gmbh.de.

Thanks...