Oracle 9i/10g/11g編程藝術(2e)學習筆記【第5章】

第五章 Oracle 進程

1、Oracle實例主要3類進程

a、服務器進程(server process):根據客戶的請求來完成工作;

b、後臺進程(background process):隨數據庫啓動而啓動,用於完成各種維護任務,如將塊寫至磁盤、維護在線重做日誌、清理異常終止的進程、維護自動工作負載存儲庫(AWR)等;

c、從屬進程(slave process):類似於後臺進程,但它們要代表後臺進程或服務器進程完成一些額外的工作。

注:本章所述進程有兩層含義,既表示進程又涵蓋線程。如果你使用的是一個多進程的Oracle實現,比如說Linux上的Oracle實現,進程就表示進程;如果你使用單進程的Windows實現,比如Windows上的Oracle實現,進程實際指Oracle進程中的線程。如DBWn進程,在Windows上就對應Oracle進程中的DBWn線程。

2、服務器進程

(1)連接與會話

a、連接:是指從客戶端到Oracle實例的一條物理路徑;

b、會話:是實例中存在的一個邏輯實體,就是表示特定會話的一組內存中的數據結構;各個會話是單獨而且獨立的,即使它們共享同一條數據庫物理連接也是如此;一個會話中的提交不會影響該連接上的任何其它會話;

c、連接與會話的關係:在一條連接上可以建立0個、1個或多個會話。會話可以有連接也可以沒有連接。如果使用Oracle Net的連接池,連接空閒一段時間後,客戶可以刪除一條物理連接,而會話依然保留(但是會話是空閒的),客戶在這個會話上執行某個操作時,它會重新建立物理連接。簡單的說,連接與會話之間有一種多對多的關係,不過最常見的是專用服務器與單一會話之間的一對一關係。

(2)專用服務器與共享服務器

a、專用服務器模式:在非OLTP環境中,也就是可能有長時間運行事務的情況下,應該只考慮這種模式,因爲該模式下客戶連接與服務器進程之間存在一種一對一的映射,不必擔心長時間運行的事務會阻塞其他事務。

b、共享服務器模式:該模式下,多個進程會共享服務器資源,適合於OLTP環境、併發用戶大的情況。

3、後臺進程

略。

4、從屬進程

略。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章