mysql的pconnect是節省資源的好方法。
但是在使用起來,timeout的問題卻是最討人厭,有時候要等待其它的api或是網外資料,等個20秒就過期了。
這是在進行查詢之前,先行下這一段,即可解決過期的問題。
if(!mysql_ping($this->db->conn_id)){ //預設會重新連線,但pconnect不會,你只會知道連線不成功。
@mysql_close($this->db->conn_id); //先關閉 連線
$this->db->conn_id=$this->db->db_pconnect(); //再重新連線一次
$this->db->db_select(); //要先select database
}
上述是以CodeIgniter為例,不用framework的概念也是差不多的。
請不要預設每次查詢都下這一段,速度會很慢。
應該是特殊情況才使用。