rac架構演變簡析
從單例項到rac,體系結構也由rac集群和clusterware集群構建
㈠ sga的變化 www.2cto.com
sga的顯著變化是多了乙個grd
grd儲存:
① pcm lock資訊
② 節點健康狀態的bitmap
㈡ 後台程序的變化
這裡只闡述rac集群上的後台程序的變化
① lmon程序
lmon提供了cgs和nm兩個服務來維護rac集群的狀態
⑴ nm
是rac集群與clusterware集群的通訊通道
通過nm,把本節點的資源登記到本地clusterware,再由本地clusterware傳遞給其他節點clusterware
同時,nm還會從其他節點的clusterware獲取他們的資源狀態
rac的每個例項的所有程序是作為乙個nm組註冊到clusterware中
其中lmon程序作為組長並獲得member id,其他程序以同樣的id註冊
⑵ cgs
cluster group services
這個服務主要負責有:
grd內的bitmap記錄了節點的健康狀態,0代表關閉,1代表正常執行
各節點的lmon定時通訊,保證grd bitmap的一致性
另外,lmon可以和下層的clusterware合作也可以單獨工作
rac集群並不總是假設clusterware集群能夠處理問題
如果等待超時,lmon會自動觸發imr(instance membership recovery)
② lmsn程序
負責資料塊在例項間的傳遞
③ lmd程序
負責在多個例項間協調對資料塊的訪問順序
④ lck程序
負責non-cache fusion資源的併發訪問
⑤ diag程序
負責例項執行時錯誤並記錄到alert.log中
⑥ gsd程序
負責從客戶端工具接收使用者命令
㈢ 檔案的變化 www.2cto.com
① redo thread
乙個例項對應乙個redo thread
redo是共享的,但隸屬於各個例項
因為在crash recovery,執行recover的節點必須能夠訪問故障節點的聯機日誌
在rac中,每個例項寫入自己的redo log中,但能夠讀取其他例項的redo log
每個例項有乙個thread#,可以區別於其他例項的redo
例項恢復的時候更多的是讀取自己thread#的redo
介質恢復時讀取全域性的rodo
② undo tablespace
每個例項都需要有乙個單獨的undo
通過引數sid.undo_tablespace配置
③ spfile
需要被所有節點訪問,應放在共享盤
Android架構簡析
mvp架構及開發模式 mvc or mvp pattern whats the difference?android中的mvp 譯 android開發中的mvp架構 首先,讓我們思考下為什麼在android開發中如此迫切地需要乙個清晰的架構。該段摘自 大全第二版 避免建立神類。避免建立無所不知,無所...
以太坊架構簡析
httpclient 支援http協議 實現get post等http方法。http json rpc ipc 1 實現程式 程序間的通訊。外部程式可以通過json rpc呼叫api。swarm 乙個web應用開發框架,其允許程式分布在多台計算機上,並能夠動態分配運算以提公升運算效率。容器 包含程式...
簡析三層架構
通過幾個問題,來初步的學習一下三層架構。1 什麼是三層架構 2 應用場景 為什麼要用三層架構?3 三層作用 4 各個層之間的關係 5 三層聯絡 引用 6 各層是怎樣呼叫的 7 三層和二層的對照 這幾個都是學習三層中最主要的問題,僅僅有把這些問題搞清楚。才算是開啟了三層的門。在軟體體系架構設計中,分層...