最近在寫乙個監控oracle執行狀況的程式,其中對鎖事件的監控 遇到了乙個麻煩:
我們的資料庫是採用3節點的集群,而資料庫鎖是存在於某乙個具體資料庫例項上的資料庫物件,這樣導致的問題就是只有當我連線到某一例項上,我才能獲取該例項上有哪些鎖物件及其相關資訊。但是我的程式要能獲取到集群中全部節點上的鎖資訊。顯然這裡是乙個矛盾了。 經過一番折騰,最後演進出如下的幾個辦法,發現採用oracle內建的gv檢視方案是最優的。
方案:在程式中建立到集群中全部節點的連線,然後遍歷,將獲取到的結果資訊彙總疊加得出最終的全域性資訊。
方案:在程式中只建立到具體乙個例項的連線,在這個例項上建立到其它例項的db_link,然後將監控寫在view中供程式呼叫
優點:將對多個資料庫連線從程式**中解放出來,拿到了資料庫檢視中,使程式可以保持乙個資料來源連線;通用性強
缺點:操作上仍然感覺比較繁瑣,而且程式移至時需要修改檢視
優點:完全符合通常在單個節點上的操作,把集群變成了單個節點。
缺點:由於是oracle內建特性,因此當更換資料庫時需要修改(或許這也不是什麼缺點)
總結:綜上可知,方案三是最優的方案,方案二次之,方案三應該放棄。
VB中的全域性物件
vb中的全域性物件 全域性物件的定義 乙個類只有唯一的乙個例項,這個例項統稱為全域性物件。全域性物件的特點 全域性物件在程式中 不需要宣告和定義,直接使用就可以了。vb中的全域性物件主要有哪些?vb下的全域性物件主要有以下幾個 它代表的是我們的整個應用程式 screen 螢幕,是各個應用程式之間共享...
Xpage中的全域性物件和函式
前提是在伺服器端指令碼中使用 requestscope在請求過程中有效 sessionscope在會話過程中有效 context是代表執行環境上下文的重要物件,有乙個重要方法redirecttopage方法將設計人員指定的頁面而不是當前頁面返回給使用者前端。session是notessession型...
node中全域性物件二 console
console在輸出log中起很大的作用。主要是用於標準輸入流的輸出。在這裡主要說一下console中的一些方法以及console在cmd命令下重定向的方法。這些變數都是列印log,但是也有各自的不同。下面在webstorm中和cmd命令下看下執行的結果。在webstorm下列印的結果 在上圖可以看...