2012-08-22 44 views
0

我有一個顯示產品的網站。每個頁面顯示16種產品,網站上有大約70,000種產品。每個頁面的HTML都是使用PHP生成的。快速圖像檢索

產品信息存儲在數據庫中。粗略地說,搜索結果的第一頁(如果我想顯示第一最廉價的物品)將(僅僅是僞代碼)顯示如下:

// run sql to fetch product titles and image filenames 
SELECT itemTitle, itemImageFileName FROM items ORDER BY itemPrice ASC LIMIT 16 

// loop through and display items 
for (i=0; i<16; i++) { 
    echo "<p>$itemTitle</p>"; 
    echo "<img src=$itemImageFileName height='100px' width='80px'>"; 
} 

當我這樣做,圖像標題首先出現,然後將圖像大約在半秒到一秒之間加載。我想知道如何加速圖像加載。

所有圖像都存儲在一個包含70,000個圖像的文件夾中。幾乎所有的圖像都小於50KB。每個圖像文件名的格式如下:id_width_height.jpg。例如,文件名可能是這樣的:32193_80_100.jpg

我想知道是否瓶頸在於服務器需要一段時間才能找到所需的文件,因爲該文件夾中有70,000個文件。有什麼方法可以加速這個嗎?是否有任何其他原因爲什麼圖像加載緩慢?

回答

0

首先,我會檢查Chrome/Firefox的網絡選項卡中的圖像請求。這將回答查詢或下載是否是關鍵部分的問題。 你有鏈接嗎?

70.000是恕我直言太..我想了拆分的文件名和創建子文件夾,例如: /htdocs/img/32193/80_100.jpg