I've developed a new site. I've located it on the internet. I would like it to be of the greatest performance and load pages faster.

This site was created in php 5.+ using codeigniter. This really is using mysql as DB. I've images onto it. I'm using Nitobi power grid for exhibiting group of records on-page. The relaxation is everything normal page controls.

Like me not too very familiar with website performance factors i must get suggestions and particulars on factors that may improve performance of website. Please tell me the way i can improve my performance.

Also please tell me if you will find any methods to appraise the performance of website as well as any websites or tools to assist test the performance.

To begin, get Opera and Firebug after which install YSlow. YSlow gives great details about the customer-side performance from the website under consideration. Here's an User Guide.

For that server-side performance, take a look at Apache JMeter.

Perhaps you have investigated opcode caching, APC, memcache etc? As the second has stated, you have to time the loading of the pages and then try to find potential SQL bottlenecks and/or scripts that may be refactored. You may even want to check out getting something similar to webgrind installed to help you see what goes on on the page load and just how lengthy each process takes.

You can observe loading occasions from the primary page and also the components it consists of using the Internet tab within the already pointed out Firebug addon for Opera. There you can observe if your page is slow because of getting lots of exterior content (like user added images approximately) or due to itself.

Within the first situation very little that you can do except getting rid of this content that can take most time, within the second situation you will have to have a look at the PHP code thinking about the truth that the majority of the occasions performance issues in PHP programs rely on imperfect database interaction (badly written queries, repeated queries when you might suffice, etc.).

Profiling is paramount word on the planet of performance optimisation. To profile your website you need to measure 2 different areas: php scripts running some time and whole page load time (including pictures, javascripts, style sheets etc). To measure PHP scripts isn't very difficult. The simplest strategy is to put this line towards the top of your page


which line at the end:

echo "Time taken: ".round(microtime(1) - $TIMER['start'],3)

whether it stays below ,1 sec, it's ok. Now towards the whole page loading. Dunno if you will find some http sniffer with response time recording.
Edit: Appears like Firebug's Internet tab pointed out above may be the right tool with this

Page produced ins0074 secs. DB runtime .0006 secs (7.87 %) using 1 DB queries, 7 DB cache brings, 3 RSS cache brings and 61.88 K memory.


ouch !!

dont bump - this really is his benchmark )

Like what Kevin stated, I would recommend trying opcode caching with PHP. I am unsure that is presently best, however when I looked up last year, I made the decision to choose [eAccelerator][1] and delay pills work great. I have also used APC on another server however i prefer eAccelerator.

You need to probable opt for Col. Shrpnel's advice and perform some profiling too.

[1]: http://en.wikipedia.org/wiki/EAccelerator eAccelerator