最近由于業(yè)務(wù)上的需求,涉及到了ORACLE的TIMESTEN內(nèi)存數(shù)據(jù)庫,也下載了一些官方的文檔看了看,里面的內(nèi)容還是蠻多的,對于里面
的一些技術(shù),結(jié)合當前系統(tǒng)的結(jié)構(gòu),發(fā)現(xiàn)這個東東還是蠻不錯的。
當前我們系統(tǒng)中涉及到的參數(shù)管理是采用UNIX共享內(nèi)存的方式來管理的,就是將各業(yè)務(wù)的參數(shù)通過共享內(nèi)存的方式載入到內(nèi)存中,然后每個
業(yè)務(wù)處理進程通過接口函數(shù)訪問所需的參數(shù),對于這樣的方式,存在以下幾個方面的問題:
1、每次增加新的接口都要在后臺建立個內(nèi)存表結(jié)構(gòu)
2、重載運算符(==,<)
3、增加接口函數(shù)
4、需要分配一定的共享內(nèi)存區(qū)域,有共享內(nèi)存邊界的限制
5、對于參數(shù)的修改和更新,要手工刷新參數(shù),致使業(yè)務(wù)進程處于等待狀態(tài)
對于上述的情況 ,結(jié)合TIMESTEN的CACHE GROUP的使用說明,發(fā)現(xiàn)業(yè)務(wù)參數(shù)可以通過它的方式進行管理:
1、支持參數(shù)的實時更新,而不需要手工的刷新操作,降低了參數(shù)生效的時間延遲,不需要使業(yè)務(wù)處理進程處于臨時等待情況
2、每次增加新的參數(shù)接口時,都可以簡化程序的修改步驟
3、對于參數(shù)的搜索方式,原來是使用二分法搜索,數(shù)據(jù)已經(jīng)經(jīng)過排序;而內(nèi)存數(shù)據(jù)庫是采用了B樹結(jié)構(gòu)存儲,搜索效率應(yīng)該不會比原來的差
但是如果使用了商用的內(nèi)存數(shù)據(jù)庫,對于產(chǎn)品的移植可能會帶來一定的麻煩,所以各有利弊,至于使用與否還需要權(quán)衡下。
posted on 2009-07-14 17:49
LG 閱讀(317)
評論(0) 編輯 收藏 引用 所屬分類:
CPlusPlus 、
Oracle