如何優化頁面響應時間: 動態頁面靜態化 優化資料庫 使用負載均衡 使用緩存 如果頁面中的一些內容不經常改動,可以使用動態頁面靜態化。好處是:減少伺服器腳本的計算時間;降低伺服器的響應時間。 1、動態URL地址設置靜態形式(偽靜態) 例如:http://xxx.com/index.php?c=play
如何優化頁面響應時間:
- 動態頁面靜態化
- 優化資料庫
- 使用負載均衡
- 使用緩存
如果頁面中的一些內容不經常改動,可以使用動態頁面靜態化。好處是:減少伺服器腳本的計算時間;降低伺服器的響應時間。
1、動態URL地址設置靜態形式(偽靜態)
例如:http://xxx.com/index.php?c=play&id=1111 =>
http://xxx.com/play/1111.html (並不是一個純靜態頁面)
2、buffer
buffer其實就是緩衝區,一個記憶體地址空間,主要用於存儲數據區域。
編寫一個buffer.php文件,並保存,並不是直接將文件內容保存在磁碟里,而是先把內容寫入到buffer中,當一個buffer寫滿的時候,會把buffer中的數據寫入到磁碟里,這是操作系統的buffer。
當執行一個PHP程式的時候,如果有輸出內容,會先放到輸出緩衝區,數據再通過tcp傳給客戶端或瀏覽器。
要想數據能夠放到輸出緩衝區,首先打開輸出緩衝,通過php.ini文件output_buffering = On或者ob_start(),然後使用ob_get_contents()獲取輸出緩衝區內容。
3、PHP實現頁面純靜態化
純靜態化的html文件放在伺服器端的磁碟。
基本方式:
- file_put_contents()函數;
int file_put_contents ( string $filename
, mixed $data
[, int $flags
= 0 [, resource $context
]] )
成功會返回寫入到文件內數據的位元組數,失敗時返回false。
- 使用PHP內置緩存機制實現頁面靜態化-output_buffering
ob函數
ob_start(); 打開輸出緩衝區
ob_get_contents(void);返回輸出緩衝區內容
ob_clean(void);清空輸出緩衝區
ob_get_clean(void);得到當前緩衝區的內容並刪除當前輸出緩衝區