2011-09-01 59 views
4

我們正在努力創建一個新網站,當我在瀏覽器 ex:www.mywebsite.com上寫下我的網站鏈接時,等待時間有點高。減少網站等候時間

我已經看到了一些網站,有一個較低的等待時間,然後我的,是沒有辦法減少等待時間,也是我們正在使用的memcached的網站?

PS:idk究竟是怎麼叫的,但我看到它與螢火蟲,它說等待時間。

謝謝。

EDITED

這是我用來從數據庫中獲取數據的代碼:

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 
+0

您是否正在加載任何外部資源? (腳本,CSS,圖像等)如果是的話,那麼外部資源的主機很可能運行緩慢,而不是您的服務器。 –

+2

有關一般建議,請查看[Page Speed](http://code.google.com/speed/page-speed/)和[YSlow](http://developer.yahoo.com/yslow/)。 –

+3

打個比方:有些汽車加速時速達到100kmph,持續4秒,一些加速到10秒。你怎麼能解釋這一點,而不知道賽車使用的是哪輛車。 – zerkms

回答

4

嘛許多不同的因素會影響你的頁面加載時間。這三個最大的問題是:

  1. 服務器滯後
  2. 內容超載
  3. 可憐的編程

而不必對您的網站的詳細信息,我將簡要介紹如何診斷和解決這三大問題。如果你在這個答案的評論中提供你的網站鏈接,我可以更具體。

服務器滯後

發生這種情況,當你嘗試連接到您的網站,它掛起連接一段時間。此外,這可以有一個空白的白色頁面旋轉一段時間,然後最終開始加載您的內容。

您不能在比切換主機,或與您的主機的工作,以增加你的帶寬和服務器連接自己的其他解決這個問題。

內容超載

的最好的例子是,當你看到有人把噸圖像的一個頁面上。請記住,您添加的每張圖片都需要用戶在加載頁面之前下載此圖片。這包括<img>標籤以及background-image es中的標籤。

可憐的編程

這方面的一個症狀是類似服務器的滯後,在那裏你必須等待一段內容開始加載之前。這可能源於許多事情,從數據庫連接緩慢到多個嵌套循環。如果不查看完整的代碼很難診斷。

+0

你好,你可以看看,www.noa.al/newnoa3/ – Meo

+2

看看你的網站,它似乎最大的問題是一個緩慢的連接的地方。它可能是你的服務器,或者可能是你的數據庫。您可以按照[這裏]給出的建議緩解一些問題(http://pagespeed.googlelabs.com/#url=http_3A_2F_2Fwww.noa.al_2Fnewnoa3_2F&mobile=false)。不過,我強烈建議您聯繫主機並抱怨服務器速度較慢。他們可能會在自己的最後做些事情。 – ShaneC

+1

建議:不要從'timthumb.php'中抓取圖像,而要在插入文章的過程中執行大小調整,然後僅引用已調整大小的圖像。這可能會節省一段時間,我認爲。 –

1

這很大程度上取決於您的網站的功能。我建議從分析開始。它將幫助您確定最大收益的努力。

你也是在正確的軌道與Firebug Net tab,退房Yslow爲好。

一般:

  • 檢查服務器的CPU使用率,網絡延遲(ping)等解決任何問題。
  • 獲得更多RAM和/或更有效地使用它。下面的大部分項目都遵循這個。
  • 緩存昂貴的操作
  • 數據庫
    • 降低每頁進行查詢的次數
    • 拆分數據庫到另一臺服務器(一個或多個)以減少爭
  • 使用反向的
  • 增長速度代理/緩存將請求分割成若干前端Web服務器。
  • 將應用程序服務器拆分到自己的服務器上。
  • 優化頁面資產以便快速交付
    • 將CSS和JS文件合併爲一個文件。
    • 它們最小化 - 刪除多餘的字符
  • 使用Gzip壓縮所有文本文件服務。
  • 使用CDN將資產卸載到其他域,在現代瀏覽器上顯着提高了並行性能。
    • 圖像應該從另一個域提供。
    • 如果可能的話CSS/JS也是。

這些非常具體的:

0

解決方案: 緩慢的腳本:使用Firebug & YSlow的插件的Firefox來檢測一下減慢你失望。 對於慢速服務器:使用cloudflare加速您的服務器,增加60%或更改您的託管服務器。