池化服務與非池化服務

2021-08-27 18:54:15 字數 1411 閱讀 5101

池化服務:

選取池化服務時,伺服器物件在伺服器執行時

預先建立了指定數目的,並且只在使用者請求伺服器物件時,

優先使用

已建立的伺服器物件,如果沒有空閒的伺服器物件才會建立新的伺服器物件返回給使用者程序進行相應的操作,並且當使用者操作結束後立即將伺服器物件

釋放回到伺服器物件池中等待下乙個使用者會話。

high isolation

——服務的每個例項都會

獨佔乙個

arcsoc.exe。

low isolation

——乙個程序內可儲存有多個(預設是

8個,最多可達

256個)例項。好處是,可以啟動相對少的

arcsoc.exe

來維持同樣數量的例項,節約伺服器的記憶體資源。缺點是,如果乙個

arcsoc.exe

崩潰,那麼裡面的所有例項都會被銷毀,及時使用者正在使用它們。

一般來說,對於池化服務使用

high isolation。

池化服務的特點: 1.

池化伺服器物件是預先建立的伺服器物件,他在使用者請求伺服器物件前就已預先獲取了伺服器中包含的空間資訊,並在記憶體中建立並維持了數目伺服器物件。有效的降低了每次使用者請求時重複獲取空間資訊的時間與建立伺服器物件的系統開銷。 2.

池化伺服器物件是可供多個使用者共享。由於池化伺服器物件僅僅在使用者請求時返回給使用者,當使用者的一次操作結束後立即釋放伺服器物件到伺服器物件池中,所以池化伺服器物件允許多個應用程式程序

共享同乙個

伺服器物件

,即多個使用者可以在其操作程序中使用同乙個伺服器物件,從而達到資源的最大化利用,而且由於在使用者獲取伺服器物件前已經建立了度**物件,

所以減少了重複建立和銷毀伺服器物件的開銷,加速了系統響應的時間。 3.

池化伺服器物件時無狀態的。每次呼叫的伺服器物件都是初始化狀態,其本身無法自動儲存其狀態。並且

池化伺服器物件唯讀模式

,不能修改伺服器物件及其相關的物件。

非池化服務:

使用者第一次請求伺服器物件時建立,並當使用者

會話結束

後才會釋放伺服器物件,所以

乙個非池化伺服器物件對應乙個使用者程序。

非池化伺服器物件是有狀態的,有伺服器狀態的物件時可讀寫的物件,意味著應用可以對伺服器物件及其相關物件改動。

如果全部使用非池化的伺服器物件將會使得伺服器在大併發訪問時產生嚴重的效能問題,甚至癱瘓。

所以當不需要修改伺服器物件中的要素集內容的情況下使用池化伺服器物件來改善系統效能。

ps:一次性碗筷和家用碗筷的區別

什麼是池化理念

池化從全新視角出發重新解釋定義伺服器資源的管理和分配機制,它採用面向服務、面向需求的系統資源分配方法來整合、改善和優化伺服器的計算資源,以求達到提高整體服務質量的目的。

關於ArcGIS Server池化與非池化的理解

用arcserver肯定會遇到池化與非池的問題,而且比較難以理解,我總結了幾種理解方式,可供參考。一 首先看看catolog上的說明 池化 被許多使用者重複使用 非池化 被單一使用者使用,使用完後被釋放掉。二 乙個形象的比喻 乙個水缸裡有好多魚,你想餵魚。池化是你任意抓住一條喂,喂了就放回去。非池化...

什麼是伺服器池化

1 什麼是伺服器 我們知道,伺服器是一種特定的計算機,它通常作為網路的乙個節點為來自網路不同地方的客戶提供某種特定的服務 這裡的 服務 其實就是乙個具有特定功能的能持續執行的電腦程式。傳統意義上的伺服器概念通常和物理意義上的計算機相等同。在具有多工處理能力的現代作業系統下,一台計算機通常可以同時提供...

池化技術 執行緒池

執行緒池 任務 等待任務 全域性的任務佇列queue無任務且無銷毀,任務新增函式 等待add的signal 載入任務 add將新建任務指標task賦予queue 執行任務 執行緒池內任一rtn獲取當前佇列的頭 第乙個任務task 執行,並將此任務從佇列中剔除 退出執行緒池內某一rtn 根據實際的程式...