W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
在我們繼續(xù)之前,你應(yīng)該先了解PostgreSQL的系統(tǒng)架構(gòu)。 對(duì)PostgreSQL的部件之間如何相互作用的理解將會(huì)使本節(jié)更易理解。
在數(shù)據(jù)庫(kù)術(shù)語里,PostgreSQL使用一種客戶端/服務(wù)器的模型。一次PostgreSQL會(huì)話由下列相關(guān)的進(jìn)程(程序)組成:
一個(gè)服務(wù)器進(jìn)程,它管理數(shù)據(jù)庫(kù)文件、接受來自客戶端應(yīng)用與數(shù)據(jù)庫(kù)的聯(lián)接并且代表客戶端在數(shù)據(jù)庫(kù)上執(zhí)行操作。 該數(shù)據(jù)庫(kù)服務(wù)器程序叫做postgres
。
那些需要執(zhí)行數(shù)據(jù)庫(kù)操作的用戶的客戶端(前端)應(yīng)用。 客戶端應(yīng)用可能本身就是多種多樣的:可以是一個(gè)面向文本的工具, 也可以是一個(gè)圖形界面的應(yīng)用,或者是一個(gè)通過訪問數(shù)據(jù)庫(kù)來顯示網(wǎng)頁(yè)的網(wǎng)頁(yè)服務(wù)器,或者是一個(gè)特制的數(shù)據(jù)庫(kù)管理工具。 一些客戶端應(yīng)用是和 PostgreSQL發(fā)布一起提供的,但絕大部分是用戶開發(fā)的。
和典型的客戶端/服務(wù)器應(yīng)用(C/S應(yīng)用)一樣,這些客戶端和服務(wù)器可以在不同的主機(jī)上。 這時(shí)它們通過 TCP/IP 網(wǎng)絡(luò)聯(lián)接通訊。 你應(yīng)該記住的是,在客戶機(jī)上可以訪問的文件未必能夠在數(shù)據(jù)庫(kù)服務(wù)器機(jī)器上訪問(或者只能用不同的文件名進(jìn)行訪問)。
PostgreSQL服務(wù)器可以處理來自客戶端的多個(gè)并發(fā)請(qǐng)求。 因此,它為每個(gè)連接啟動(dòng)(“forks”)一個(gè)新的進(jìn)程。 從這個(gè)時(shí)候開始,客戶端和新服務(wù)器進(jìn)程就不再經(jīng)過最初的 postgres
進(jìn)程的干涉進(jìn)行通訊。 因此,主服務(wù)器進(jìn)程總是在運(yùn)行并等待著客戶端聯(lián)接, 而客戶端和相關(guān)聯(lián)的服務(wù)器進(jìn)程則是起起停停(當(dāng)然,這些對(duì)用戶是透明的。我們介紹這些主要是為了內(nèi)容的完整性)。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: