I have a SharePoint Farm having application server,index server,query server and database server. Each time when i browse my site it takes more than 18 seconds to load. First time it takes more than 30 seconds to load.
This may be related to your Certificate Revocation List, which is a common problem. Have a look at this post for a number of different solutions.
Turn on ASP.NET page tracing . This will tell you which part of the page lifecycle is taking the time. If the time is not included within this, then it is within another part of the response such as the certificate revocation list as @Muhimbi suggests.
You can enable tracing on individual controls by using control adapters as shown here
It is worth checking the ULS logs to check if any errors are occurring which could cause issues. Repeated app pool recycles are common causes of perceived slowness. Ensure that you have run SPDisposeCheck against any custom code which is deployed on your farm.
Check the application and system event logs on your web front end and SQL servers to ensure there is nothing glaringly wrong.
You can also use Fiddler or another web debugger to inspect the traffic going between your browser and the server. It may throw up a glaring issue that you haven't suspected.
It is also useful to use something like YSlow which is a Firebug plugin. This will alert you to any areas of the page which are contributing to slow performance.
Your site will always be a bit slower to load directly after an app pool recycle or IISReset, so concentrate on the steady state performance.
- First time your web application loads, it will always take a long time. Afterwards should be fast.
- Check your event log on the web front end. Are there any errors relating to SharePoint connecting to SQL server. Sometimes the SharePoint administrator service or something is failing to authenticate.
- Do you have any webparts on the page, such as a Content By Query WebPart, that is doing a query. Disable this webpart, then run the page again (do this for each webpart on the page). Sometimes a misconfigured Content Query webpart causes the site to slow.
What are the specifications of the machines in your farm? Can you provide more information?
What is the latency between your MOSS servers and the SQL box? If this is poor you will see slow responses.
As above, first time accessing the site is slow but as long as the application pools aren't recycling this should improve. Anything in the event log to say errors with the application pools?
Agree with SHug that you use Fiddler 2 (http://www.fiddler2.com/fiddler2/) to look at the elements within the page to see what is taking time to load.
Enable Caching and IISCompression in Sharepoint....Use SPQuery with rowlimit when you are using object model..You can use Developer dashboard to check where exactly the performance is dropdding using SPMoniterClass