[英]PHP Optimisation is this correct?
我一直在創建一個php應用程序,該應用程序對數據庫進行很多查詢 ,大約每個頁面加載大約30個左右。 由於應用程序的性質,這是必需的。 我正在使用OOP php技術並盡可能地優化查詢。 我應該使用某種緩存系統嗎? 還是會說30很好? 這是一個典型的查詢。
好的,所以我的__construct
看起來像這樣:
public function __construct($host = 'localhost', $user = 'root', $pass = 'root', $name = 'advert')
{
$this->_conn = new mysqli($host, $user, $pass, $name)
or trigger_error('Unable to connect to the server, please check your credentials.', E_USER_ERROR);
}
還有一種這樣的方法。
$sql = "SELECT `advert_id`,
`ad_title`,
`ad_image` FROM adverts WHERE UNIX_TIMESTAMP() < `ad_expires` AND `ad_show` = 0 AND `ad_enabled` = 1 ORDER BY `ad_id` DESC LIMIT 1";
$stmt = $this->_conn->prepare($sql);
if ($stmt) {
$stmt->execute();
$stmt->bind_result($ad_id, $ad_title, $ad_image);
$rows = array();
while ($row = $stmt->fetch()) {
$item = array(
'ad_id' => $ad_id,
'ad_title' => $ad_title,
'ad_image' => $ad_image
);
$rows[] = $item;
}
該應用程序有點像這樣。
謝謝任何反饋將不勝感激。
**編輯對不起,我的意思是說30個查詢而不是30個連接
您應該在有用時使用緩存。 如果沒有緩存查詢的頁面生成時間為3秒,而緩存為0.03,則顯然應該使用緩存。 如果緩存沒有明顯改善,請不要浪費資源。
只需建立一個連接並重新使用它即可。 考慮到您可能有多個用戶,所以有30個連接。
編輯:最初的問題說連接。 除非這不是經常更改的數據,否則30個查詢就可以了。 在這種情況下,您可以首先執行查詢,以查看是否需要拉數據或緩存的數據是否適合服務於用戶。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.