資料庫持久連線理解

wangtaotao發表於2014-03-11

原來的mysql_connect是非持久連線,所以即使你在當前指令碼中沒有使用mysql_close函式進行關閉連線。指令碼執行完畢後,連線標識會自動釋放掉。這裡是什麼完成自動上釋放的操作呢?php跟java一樣,有一個垃圾資源回收系統,對於不再用到的資源會自動進行記憶體回收。怎麼實現的,不知道。

 

pconnect()是建立持久連線,特點是:當前指令碼執行完畢後。該連線標識不會被釋放掉。下一個指令碼檔案還可以使用。

 

持久連線的實際用處:假如一個php指令碼檔案,同時會有多個使用者訪問該頁面。裡面涉及到資料庫查詢操作。如果使用非持久連線的話,那麼每個使用者都會從新建立一個資料庫連線。而持久連線,多個使用者訪問同一個檔案的時候,可以共享一個資料庫連線標識。這樣減少了連線次數。

 

使用持久連線常常是將php作為apache的一個擴充套件的時候進行的。


相關文章