开发者

Decrease waiting time for a website

We are trying to create a new website, and when i write the link of my website on the browser ex: www.mywebsite.com, the waiting time is a bit high.

I have seen some website that has a lower waiting time then mine, is any way to decrease the waiting time , also we are using memcached for the website?

PS: idk exactly how is called, but i see it with firebug, and it says waiting time.

Thank you.

EDITED

This is the codes i have used to get data from database:

function f3($id = '') {
    $id = mysql_real_escape_string ($id);
    $sql = 'SELECT id,post_title,post_content,post_date,post_status,term_taxonomy_id,object_id FROM wp_posts, wp_term_relationships WHERE term_taxonomy_id = 60 AND post_status = "publish" AND wp_term_relationships.object_id = id ORDER BY post_date DESC LIMIT 1 OFFSET 2';
    $res = mysql_query($sql) or die (mysql_error());    

if (mysql_num_rows($res) !=0):
    $row = mysql_fetch_assoc($res); 


    $mycontent = $row['post_content'];
    $mycontent = strip_tags($mycontent);
    $mycontent = substr($mycontent,0,150);
    $mycontent = preg_replace("/\[caption.*\[\/caption\]/", '', $mycontent); 


    $title = AvinD($row['post_title']);

    $old_date = $row['post_date'];              // returns Saturday, January 30 10 02:06:34
    $old_date_timestamp = strtotime($old_date);
    $new_date = date('d.m.Y   H:i', $old_date_timestamp); 


    $first_img = '';
    $my1content = AvinD($row['post_content']);
    $output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $my1content, $matches); 
    $first_img = $matches [1] [0];
    if(empty($first_img)){ //Defines a default image
  开发者_开发问答  $first_img = "/img/default.png";
    }

    echo '
        '.$new_date.'

        <a href="single.php?id='.$row['id'].'"> '.$title.' </a> </div>
         <a href="single.php?id='.$row['id'].'"> <img src="timthumb.php?src='.$first_img.'&amp;h=107&amp;w=190amp;zc=1" alt="" />  </a> </div>
        '.$mycontent.'
    '; //echo

    else:
        echo 'Page dont exist';
    endif;
} // end 


Well a number of different factors can affect your page load time. The three biggest being:

  1. Server Lag
  2. Content Overload
  3. Poor Programming

Without having more details about your website, I'll briefly describe how to diagnose and fix these three big problems. If you provide your website link in a comment on this answer I can be more specific.

Server Lag

This happens when you try to connect to your website, and it hangs for a while connecting. Moreover this can have a blank white page which spins for a while, then finally begins to load your content.

You cannot fix this on your own other than switching hosts, or working with your host to increase your bandwidth and server connection.

Content Overload

The best example of this is when you see someone put tons of images on one page. Keep in mind that every image you add requires the user to download this image before the page is loaded. This includes those in <img> tags as well as background-imagees.

Poor Programming

A symptom of this would be similar to server lag, where you have to wait a while before content begins to load. This can result from a number of things, from a slow Database connection to multiple nested loops. Very difficult to diagnose without looking at the full code.


A lot of it depends on what your site does. I recommend starting by profiling. It will help you pinpoint your effort for maximum gain.

  • Simplest way to profile a PHP script

You are also the right track with the Firebug Net tab, check out Yslow as well.

In general:

  • Check server CPU usage, network latency (ping) etc. Resolve any issues.
  • Get more RAM and/or use it more effectively. Most of the items below follow from this.
  • Cache expensive operations
  • Increase speed of the database
    • Reduce the number of queries performed per page
    • Split database to another server(s) to reduce contention
  • Use a reverse proxy/cache to divide requests to several front-end web servers.
  • Split application server to its own server(s).
  • Optimize page assets for quick delivery
    • Combine CSS and JS files into one file each.
    • Minify them - remove extraneous characters
  • Use Gzip compression on all text files served.
  • Use CDN's to offload assets to other domains, improves parallel performance drastically on modern browsers.
    • Images should be served from another domain.
    • If possible CSS/JS also.

These are well detailed at:

  • http://www.codinghorror.com/blog/2007/08/yslow-yahoos-problems-are-not-your-problems.html Keep in mind if your site sees low-traffic, some of these are overkill.


solutions: For Slow script: use firebug & YSlow Plugin for firefox to detect what slows you down. For Slow Server: use cloudflare to speed up your server, up too 60% or change your hosting compney.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜