15、盡早刷新輸出緩沖
當(dāng)用戶請求一個頁面時,無論如何都會花費200到500毫秒用于后臺組織HTML文件。在這期間,瀏覽器會一直空閑等待數(shù)據(jù)返回。在PHP中,你可以使用flush()方法,它允許你把已經(jīng)編譯的好的部分HTML響應(yīng)文件先發(fā)送給瀏覽器,這時瀏覽器就會可以下載文件中的內(nèi)容(腳本等)而后臺同時處理剩余的HTML頁面。這樣做的效果會在后臺煩惱或者前臺較空閑時更加明顯。
輸出緩沖應(yīng)用最好的一個地方就是緊跟在<head />之后,因為HTML的頭部分容易生成而且頭部往往包含CSS和JavaScript文件,這樣瀏覽器就可以在后臺編譯剩余HTML的同時并行下載它們。 例子:
... <!-- css, js --> </head> <?php flush(); ?> <body> ... <!-- content -->
為了證明使用這項技術(shù)的好處,Yahoo!搜索 率先研究并完成了用戶測試。
16、使用GET來完成AJAX請求
Yahoo!Mail 團(tuán)隊發(fā)現(xiàn),當(dāng)使用XMLHttpRequest時,瀏覽器中的POST方法是一個“兩步走”的過程:首先發(fā)送文件頭,然后才發(fā)送數(shù)據(jù)。因此使用GET最為恰當(dāng),因為它只需發(fā)送一個TCP包(除非你有很多cookie)。IE中URL的最大長度為2K,因此如果你要發(fā)送一個超過2K的數(shù)據(jù)時就不能使用GET了。
一個有趣的不同就是POST并不像GET那樣實際發(fā)送數(shù)據(jù)。根據(jù) HTTP規(guī)范 ,GET意味著“獲取”數(shù)據(jù),因此當(dāng)你僅僅獲取數(shù)據(jù)時使用GET更加有意義(從語意上講也是如此),相反,發(fā)送并在服務(wù)端保存數(shù)據(jù)時使用POST。
本文鏈接:http://www.95time.cn/tech/site/2008/5787.asp
出處:藍(lán)色理想
責(zé)任編輯:bluehearts
上一頁 Yahoo!網(wǎng)站最佳體驗守則之服務(wù)器篇 [2] 下一頁
◎進(jìn)入論壇網(wǎng)站綜合、網(wǎng)頁制作版塊參加討論
|