聲明:這是網(wǎng)上找到的
項目一:交通銀行全國大集中IBP(國際業(yè)務(wù)系統(tǒng))項目
一般的調(diào)優(yōu)策略如下:
在湖南移動的調(diào)優(yōu)中,在數(shù)據(jù)庫的設(shè)計和應(yīng)用設(shè)計不做更改的前提下,首先,對IBM存儲系統(tǒng)和主機(jī)系統(tǒng)作深入細(xì)致的參數(shù)和配置調(diào)整。同時,在湖南移動計費(fèi)中心技術(shù)人員的全力配合下,對ESS存儲系統(tǒng)上的數(shù)據(jù)分布作了大規(guī)模的調(diào)整,并且通過Precise軟件對Oracle數(shù)據(jù)庫性能參數(shù)的監(jiān)控,定位對系統(tǒng)CPU, I/O等資源消耗嚴(yán)重的瓶頸,對Oracle數(shù)據(jù)庫和應(yīng)用系統(tǒng)提出性能調(diào)優(yōu)建議。
2,針對應(yīng)用的性能狀況,修改Oracle的性能參數(shù)。
ü cursor_sharing的值從exact改為force, 減少internal lock wait.
ü spin_count的值從2000調(diào)整到5000。
· 根據(jù)Precise的監(jiān)測和分析結(jié)果,檢查資源消耗最大SQL語句的邏輯設(shè)計,將排名靠前SQL語句的表數(shù)據(jù)與索引分別存儲,建立合適的分區(qū)索引,提高資源消耗靠前SQL語句的并行度。
· 通過StorWatch Expert軟件持續(xù)監(jiān)控ESS的使用,掌握ESS的性能表現(xiàn)和使用狀況。
· 通過Precise軟件對Oracle和應(yīng)用有限數(shù)據(jù)的分析,確定當(dāng)前應(yīng)用系統(tǒng)并沒有達(dá)到理想的運(yùn)行狀態(tài),建議對應(yīng)用系統(tǒng)作相應(yīng)的檢查和調(diào)整。同時,為了更準(zhǔn)確定位應(yīng)用問題所在,建議收集更長時間的數(shù)據(jù),再進(jìn)行更深入的分析。
3,調(diào)整數(shù)據(jù)在ESS上的分布。
首先將數(shù)據(jù)平均地分布在兩個cluster上,之后將數(shù)據(jù)分布在盡可能多的通道上。
由于整個數(shù)據(jù)容量有約2120GB,整個數(shù)據(jù)的遷移需要幾十個小時的時間,而在生產(chǎn)系統(tǒng)上是不允許有很長的停機(jī)時間進(jìn)行數(shù)據(jù)遷移。
根據(jù)多個方案的論證對比,決定采用邏輯卷鏡像的方案實施數(shù)據(jù)遷移。具體的步驟是先將所有的邏輯卷在目的的硬盤上建立鏡像、同步數(shù)據(jù)、再將原硬盤上的鏡像部分刪除。整個數(shù)據(jù)遷移工作全部在系統(tǒng)的后臺進(jìn)行,共進(jìn)行了60個小時,完成所有數(shù)據(jù)遷移。
4,對操作系統(tǒng)內(nèi)核參數(shù)作出調(diào)整
· 對vmtune的參數(shù)進(jìn)行調(diào)整如下:
-p -P -r -R -f -F -N -W
minperm maxperm minpgahead maxpgahead minfree maxfree pd_npages maxrandwrt
396414 792828 0 0 960 1024 65536 1
-M -w -k -c -b -B -u -l -d
maxpin npswarn npskill numclust numfsbufs hd_pbuf_cnt lvm_bufcnt lrubucket defps
3250555 65536 16384 16 2048 2656 9 131072 1
-s -n -S -L -g -h
sync_release_ilock nokilluid v_pinshm lgpg_regions lgpg_size strict_maxperm
1 0 0 0 0 0
-t -j -J -z
maxclient j2_nPagesPer j2_maxRandomWrite j2_nRandomCluster
792828 32 0 0
-Z -q -Q -y
j2_nBufferPer j2_minPageReadAhead j2_maxPageReadAhead memory_affinity
512 2 8 0
-V -i
num_spec_dataseg spec_dataseg_int
0 512
PTA balance threshold percentage = 50.0%
number of valid memory pages = 4063193 maxperm=20.0% of real memory
maximum pinable=80.0% of real memory minperm=10.0% of real memory
number of file memory pages = 1955960 numperm=49.3% of real memory
number of compressed memory pages = 0 compressed=0.0% of real memory
number of client memory pages = 0 numclient=0.0% of real memory
# of remote pgs sched-pageout = 0 maxclient=20.0% of real memory
· 對schedtune參數(shù)的調(diào)整如下:
THRASH SUSP FORK SCHED
-h -p -m -w -e -f -d -r -t -s
SYS PROC MULTI WAIT GRACE TICKS SCHED_D SCHED_R TIMESLICE MAXSPIN
0 4 2 1 2 10 16 16 1 8192
CLOCK SCHED_FIFO2 IDLE MIGRATION FIXED_PRI
-c -a -b -F
%usDELTA AFFINITY_LIM BARRIER/16 GLOBAL(1)
100 7 4 0
紅色的為要調(diào)整的值。
5,檢查資源消耗最大語句的邏輯設(shè)計。
l 建立合適的分區(qū)索引
l 將排名靠前語句的表數(shù)據(jù)與索引分別存儲。
l 提高資源消耗靠前語句的并行度。
l Oracle 的參數(shù)cursor_sharing設(shè)為force減少internal lock wait
l 調(diào)整Latch的數(shù)量(如DB_BLOCK_LRU_LATCHES)或內(nèi)存的一些參數(shù)(如SHARED_POOL_SIZE等)解決內(nèi)部鎖問題。
6,由于數(shù)據(jù)存儲調(diào)整后,系統(tǒng)I/O性能狀況良好,系統(tǒng)和存儲端的性能表現(xiàn)已調(diào)整至最佳,系統(tǒng)和存儲端的性能調(diào)優(yōu)工作已經(jīng)完成。建議客戶下一步的工作重點是解決應(yīng)用系統(tǒng)的性能瓶頸,結(jié)合Precise對應(yīng)用的監(jiān)控結(jié)果,檢查應(yīng)用的邏輯設(shè)計,數(shù)據(jù)索引的建立和分布。協(xié)助應(yīng)用開發(fā)商修改應(yīng)用。
7,調(diào)整操作系統(tǒng)交換空間(page space)。
項目成功與失敗的經(jīng)驗歸納:
在湖南移動BOSS系統(tǒng)的性能調(diào)優(yōu)中,項目的成功經(jīng)驗有以下幾點:
1. 數(shù)據(jù)庫前期的合理的架構(gòu)設(shè)計(物理設(shè)計和邏輯設(shè)計)是整個項目成敗的關(guān)鍵,合理的架構(gòu)設(shè)計為整個項目穩(wěn)定可靠高效運(yùn)行打下了良好的基礎(chǔ),同時也起到了事半功倍的作用。在湖南移動BOSS系統(tǒng)中就是因為數(shù)據(jù)庫在ESS物理存儲的不合理分布而直接導(dǎo)致了系統(tǒng)的I/O瓶頸。
2. 根據(jù)系統(tǒng)的物理資源,對數(shù)據(jù)庫的配置參數(shù)和操作系統(tǒng)內(nèi)核參數(shù)做合理的調(diào)整,保證系統(tǒng)物理資源(CPU,I/O,內(nèi)存和網(wǎng)絡(luò))和邏輯資源(裸設(shè)備,文件系統(tǒng)等)合理的分布和應(yīng)用。
3. 要善于借助于第三方的監(jiān)控軟件(如:StorWatch Expert和Precise軟件),這些軟件的運(yùn)用可以快速的定位性能瓶頸從而更快速的作出性能調(diào)整。
4. 檢查資源消耗最大SQL語句的邏輯設(shè)計,將排名靠前SQL語句的表數(shù)據(jù)與索引分別存儲,建立合適的分區(qū)索引,提高資源消耗靠前SQL語句的并行度。很多性能瓶頸往往是由于“惡劣”的SQL造成的。
5. 要有一個很好的性能調(diào)整流程和性能調(diào)整方法步驟,循序漸進(jìn),一步一步定位,逐步縮小范圍,知道最后定位性能瓶頸。
6. 要善于團(tuán)隊合作,在整個性能調(diào)整中,我負(fù)責(zé)軟件調(diào)整,要和硬件調(diào)整,網(wǎng)絡(luò)調(diào)整的技術(shù)人員通力合作。
7. 性能調(diào)整是全局的工作,涉及應(yīng)用開發(fā),中間件,數(shù)據(jù)庫,操作系統(tǒng),存儲,網(wǎng)絡(luò)等。需要對全局的信息架構(gòu)有清晰的認(rèn)識。
你在項目中崗位與貢獻(xiàn):
在湖南移動BOSS系統(tǒng)的性能調(diào)整中,我是以IBM技術(shù)顧問身份參與性能調(diào)整的,主要負(fù)責(zé)對Oracle數(shù)據(jù)庫配置參數(shù)的調(diào)整;負(fù)責(zé)完成數(shù)據(jù)庫后期的性能監(jiān)控,性能調(diào)優(yōu);負(fù)責(zé)檢查資源消耗最大SQL語句的邏輯設(shè)計,將排名靠前SQL語句的表數(shù)據(jù)與索引分別存儲,建立合適的分區(qū)索引,提高資源消耗靠前SQL語句的并行度。負(fù)責(zé)在操作系統(tǒng)層面定位性能瓶頸(CPU,內(nèi)存,I/O和網(wǎng)絡(luò)瓶頸)并調(diào)整操作系統(tǒng)內(nèi)核參數(shù)。負(fù)責(zé)協(xié)助開發(fā)人員對應(yīng)用開發(fā)作出修改和SQL性能調(diào)整。
項目四:江蘇電力公司負(fù)控系統(tǒng)
項目簡介(功能與用途):
江蘇電力公司電力負(fù)荷管理及用電監(jiān)控(簡稱負(fù)控系統(tǒng))系統(tǒng)是為了解決了近年來江蘇的“電荒”而上線的一個電力調(diào)度系統(tǒng)。通過負(fù)控系統(tǒng)可以合理進(jìn)行電力的調(diào)度從而最大程度上保證企業(yè)和用戶的用電。
項目難點與解決方案:
江蘇電力公司負(fù)控系統(tǒng)后臺數(shù)據(jù)庫為DB2數(shù)據(jù)庫,中間件為IBM CICS交易中間件,運(yùn)行在IBM AIX操作系統(tǒng)上,前臺采用VB和C開發(fā)。
該項目的難點主要由以下幾點:
1, 系統(tǒng)上線的時間非常緊迫,限期在江蘇17個地市上線,這就是說要確保每次每個地方上線都要成功不能失敗。
2, 由于采用了IBM 的交易中間件CICS,這就需要在應(yīng)用,數(shù)據(jù)庫和CICS之間合理的調(diào)整相關(guān)配置參數(shù),確保系統(tǒng)運(yùn)行性能。
3, 在白天高峰期間,交易并發(fā)多,數(shù)據(jù)庫性能不好。
4, 應(yīng)用中部分SQL語句比較復(fù)雜,而且SQL語句的寫法和謂詞等方面使用不當(dāng),直接造成低效率的SQL運(yùn)行,占用系統(tǒng)I/O和內(nèi)存。
5, 各地市使用的DB2的版本(DB2 V5,DB2 V6,DB2 V7,DB2 V8)不一致,使用的操作系統(tǒng)(AIX 4.3.3 ,AIX 5L,AIX 5.2)版本也不一致,使用的CICS版本(CICS 4.3,CICS 5.0,CICS 5.1)也不一致;這需要在有限的時間內(nèi)在不同的版本上做調(diào)試并且只能成功。
6, 負(fù)控系統(tǒng)關(guān)聯(lián)營銷系統(tǒng)和調(diào)度系統(tǒng)并且在同一臺主機(jī)上工作,所以上線需要和相關(guān)部門和省電力公司協(xié)調(diào),必須確保不能影響別的業(yè)務(wù)系統(tǒng),必須保證首先不能因為負(fù)控系統(tǒng)不能上線而影響別的系統(tǒng),其次保證負(fù)控系統(tǒng)上線后不能因為應(yīng)用對資源的占用而影響其它系統(tǒng)。
對于上述問題,分別采用了如下解決方案:
1, CICS版本做充分的測試,確保應(yīng)用萬無一失。在應(yīng)用開發(fā)期間,對不同的數(shù)據(jù)庫版本,不同的操作系統(tǒng)版本和不同的
2, locklist,maxlocks,locktimeout和dlchktime)等數(shù)據(jù)庫配置參數(shù);其次,為了讓鎖的快速釋放不至于引起交易阻塞,就需要我們在表上創(chuàng)建合理的索引。所以,造成引起鎖等待的應(yīng)用程序和SQL語句,對這樣應(yīng)用和SQL進(jìn)行合理的構(gòu)建索引。在業(yè)務(wù)邏輯允許的情況下,盡量使用UR(uncommit read)的隔離級別來提高讀并發(fā)。對于負(fù)控系統(tǒng)白天并發(fā)期間產(chǎn)生的大量鎖現(xiàn)象,首先,需要加大相關(guān)數(shù)據(jù)庫中有關(guān)鎖的參數(shù)(
3, SQL語句,利用DB2監(jiān)控工具(事件監(jiān)視器)找出這些SQL語句并作出解釋分析判斷SQL語句的瓶頸,對于這些問題,對開發(fā)人員詳細(xì)解釋如何高效的使用SQL,協(xié)助開發(fā)人員修改應(yīng)用。對于應(yīng)用開發(fā)中的很多運(yùn)行效率低下
4, CICS的接口,CICS和數(shù)據(jù)庫的XA接口,在業(yè)務(wù)邏輯滿足的情況下,盡量采用一階段提交(1pc),因為1pc的運(yùn)行性能要比兩階段提交好。對于應(yīng)用程序和
5, DB2的數(shù)據(jù)庫性能調(diào)整中,詳細(xì)評估系統(tǒng)中可以使用的資源和系統(tǒng)最大可能占用的資源,逐步調(diào)整數(shù)據(jù)庫的配置參數(shù)并進(jìn)一步監(jiān)控調(diào)整的結(jié)果。因為負(fù)控系統(tǒng)和營銷系統(tǒng),調(diào)度系統(tǒng)運(yùn)行在同一臺機(jī)器上,所以在進(jìn)行
項目成功與失敗的經(jīng)驗歸納:
江蘇電力公司負(fù)控系統(tǒng)從2004.4月首先在無錫上線到2004年11月在南通最后上線,整個系統(tǒng)上線期間如履薄冰,如臨深淵,F(xiàn)在系統(tǒng)已經(jīng)穩(wěn)定運(yùn)行近兩年,負(fù)控系統(tǒng)的成功經(jīng)驗有以下幾點:
1, 需要對企業(yè)信息架構(gòu)有全局的了解,因為現(xiàn)在企業(yè)信息架構(gòu)非常復(fù)雜,往往涉及到的不只是數(shù)據(jù)庫,還有操作系統(tǒng),中間件,應(yīng)用,存儲等,所以需要對信息架構(gòu)全局有很全面的了解,這就需要不斷的學(xué)習(xí)和更新新的技術(shù)。這次我們在負(fù)控系統(tǒng)上線期間,因為時間緊迫(一個地市只有一晚上將近10小時時間),在這么短的時間內(nèi),很難保證很順利的上線,如果出現(xiàn)問題,一定要快速的定位是在什么層面(操作系統(tǒng),數(shù)據(jù)庫,中間件,應(yīng)用,存儲等)出現(xiàn)的問題然后快速解決之,所以必須具備全局的對信息架構(gòu)的駕馭能力。
2, 和相關(guān)業(yè)務(wù)部門的溝通和協(xié)調(diào)非常關(guān)鍵,很多時候我們需要他們配合才能完成相關(guān)工作,所以交流和溝通是非常關(guān)鍵的。國內(nèi)很多壟斷部門的員工往往非常牛,這就需要我們耐心的,不厭其煩的去和他們做好溝通和協(xié)調(diào)。這一點對負(fù)控系統(tǒng)的按時上線也非常關(guān)鍵。
3, 在企業(yè)內(nèi)部,往往可能存在很多不同版本的數(shù)據(jù)庫,操作系統(tǒng),CICS和應(yīng)用版本,他們之間的兼容性非常關(guān)鍵。我們曾經(jīng)碰到很多DB2 V8客戶端無法訪問DB2 V7服務(wù)器的情況,也碰到很多DB2 V7客戶端訪問DB2 V8服務(wù)器時出現(xiàn)實例crash的現(xiàn)象。同樣還有很多操作系統(tǒng)版本和CICS版本不一致所帶來的問題。這就需要我們詳細(xì)了解數(shù)據(jù)庫,CICS,應(yīng)用和操作系統(tǒng)之間的兼容性問題。
4, 在部分地市,由于使用了最新的DB2版本,發(fā)現(xiàn)上線后有很多問題,后來經(jīng)過問題診斷和咨詢IBM,發(fā)現(xiàn)是DB2新版本bug的問題,所以企業(yè)在使用相關(guān)軟件的時候,最好不要用最新的版本而要用相對穩(wěn)定的版本。
5, 在進(jìn)行數(shù)據(jù)庫的配置參數(shù)調(diào)整時,一定詳細(xì)了解系統(tǒng)的物理資源和邏輯資源,以及目前系統(tǒng)中已經(jīng)在運(yùn)行的系統(tǒng)和應(yīng)用,確保新上線的應(yīng)用不影響已有的應(yīng)用。
6, 要結(jié)合不同的數(shù)據(jù)庫產(chǎn)品,在保證業(yè)務(wù)邏輯允許的情況下,使用正確的隔離級別(UR)和CICS的一階段提交來最大程度上提高數(shù)據(jù)庫的并發(fā)和應(yīng)用的性能。
你在項目中崗位與貢獻(xiàn):
負(fù)責(zé)完成江蘇電力公司負(fù)控系統(tǒng)在17地市的上線;負(fù)責(zé)完成負(fù)控系統(tǒng)數(shù)據(jù)庫后期的性能監(jiān)控,性能調(diào)優(yōu);負(fù)責(zé)培訓(xùn)編程人員如何編寫高效的SQL,從而使整體應(yīng)用運(yùn)行效率提高;負(fù)責(zé)構(gòu)建數(shù)據(jù)庫的索引并刪除冗余的索引;負(fù)責(zé)負(fù)控系統(tǒng)的數(shù)據(jù)移植;負(fù)責(zé)協(xié)調(diào)上線期間和業(yè)務(wù)部門的交流溝通;負(fù)責(zé)負(fù)控系統(tǒng)后期的數(shù)據(jù)庫維護(hù)和技術(shù)支持。
項目五:烏魯木齊商業(yè)銀行綜合業(yè)務(wù)系統(tǒng)
項目簡介(功能與用途):
烏魯木齊商業(yè)銀行銀行綜合業(yè)務(wù)系統(tǒng)是商行的核心系統(tǒng),負(fù)責(zé)處理金卡工程、電話銀行、網(wǎng)上銀行、POS、ATM 及各種自助終端,該系統(tǒng)穩(wěn)定運(yùn)行保證了聯(lián)機(jī)交易和批量處理能力的可靠性和高可用性,大大地簡化了業(yè)務(wù)操作,為完善烏魯木齊商業(yè)銀行的信息決策管理體系,為提高各業(yè)務(wù)部門的風(fēng)險控制和科學(xué)管理水平提供了必要的保障。
項目難點與解決方案:
烏魯木齊商業(yè)銀行數(shù)據(jù)庫在2003-08-13日出現(xiàn)系統(tǒng)故障,造成銀行綜合業(yè)務(wù)系統(tǒng)停機(jī),影響了業(yè)務(wù)的正常進(jìn)行,造成了經(jīng)濟(jì)損失和不良的社會影響。烏魯木齊商業(yè)銀行后臺采用DB2數(shù)據(jù)庫,運(yùn)行在IBM AIX平臺上,使用IBM CICS交易中間件,前臺采用嵌入C編程。
該項目的難點主要由以下幾點:
1, 由于系統(tǒng)宕機(jī)后,為了保證系統(tǒng)快速啟動,相關(guān)的CICS日志未能保存,這給后續(xù)的問題診斷帶來的困難。
2, 由于該系統(tǒng)涉及到應(yīng)用開發(fā)商(中聯(lián)),系統(tǒng)集成商,系統(tǒng)維護(hù)商和客戶,所以在進(jìn)行問題診斷時,大家莫衷一是,都相互推諉責(zé)任,這對準(zhǔn)確的定位帶來了困難。
3, 客戶使用的DB2版本很老(DB2 V6),IBM已經(jīng)停止技術(shù)支持和補(bǔ)丁更新。
4, 客戶的應(yīng)用程序編寫人員已經(jīng)離開應(yīng)用開發(fā)商公司,這給程序的更改帶來很大困難。
5, 客戶希望能夠快速定位問題所在,并且杜絕這種問題的重現(xiàn)。
對于上述問題,分別采用了如下解決方案:
1, 仔細(xì)查看操作系統(tǒng)日志,數(shù)據(jù)庫診斷日志和CICS的部分日志,仔細(xì)的定位問題所在,并且詳細(xì)詢問客戶相關(guān)技術(shù)人員在系統(tǒng)宕機(jī)前都做了哪些操作。
2, 協(xié)調(diào)應(yīng)用開發(fā)商,系統(tǒng)集成商和系統(tǒng)維護(hù)商,大家群策群力共同定位問題所在,應(yīng)用開發(fā)商負(fù)責(zé)聯(lián)系以前的編程人員,了解程序。系統(tǒng)集成商和系統(tǒng)維護(hù)商在測試機(jī)上搭建模擬環(huán)境,爭取在模擬環(huán)境中能夠把問題重現(xiàn)。
3,經(jīng)過診斷發(fā)現(xiàn)是CICS編程中調(diào)用了C的malloc()函數(shù)而引起的,這需要協(xié)助開發(fā)商修改程序。
4,引起系統(tǒng)宕機(jī)的誘因是在白天做tar磁帶的操作,由于tar磁帶導(dǎo)致AIX系統(tǒng)文件內(nèi)存使用完,CICS程序無法獲取所需的資源從而導(dǎo)致業(yè)務(wù)系統(tǒng)宕機(jī)。
5,調(diào)整AIX的內(nèi)核參數(shù),調(diào)整文件內(nèi)存和計算內(nèi)存的頁面替換算法所關(guān)聯(lián)的vmtune所對應(yīng)的maxperm,minperm和maxclient參數(shù)。
項目成功與失敗的經(jīng)驗歸納:
通過對烏魯木齊商業(yè)銀行業(yè)務(wù)系統(tǒng)的宕機(jī)做問題診斷,得出以下幾點經(jīng)驗:
1, 用戶是希望能夠解決問題并保證系統(tǒng)的穩(wěn)定運(yùn)行,這需要應(yīng)用開發(fā)商,系統(tǒng)集成商和系統(tǒng)維護(hù)商能夠通力合作共同找出問題并解決之而不是相互推卸責(zé)任。
2, 要保存好相關(guān)操作系統(tǒng),CICS和數(shù)據(jù)庫的診斷日志以保證系統(tǒng)在出現(xiàn)故障時準(zhǔn)確定位,為客戶編寫腳本自動在機(jī)器宕機(jī)時候保存相關(guān)診斷日志。
3, 與客戶相關(guān)技術(shù)人員詳細(xì)溝通,溝通系統(tǒng)宕機(jī)前所做的操作,這一點非常重要。
4, 不但要定位問題,而且一定要有解決該問題的方法,避免該問題重現(xiàn),所以必須指導(dǎo)相關(guān)開發(fā)人員修改程序,這需要我們具備良好的編程基礎(chǔ)。
5, 告誡客戶技術(shù)人員不要在高峰期間做compress,tar和大文件的ftp操作。
6, 在做問題診斷時,必須具備全局的操作系統(tǒng),數(shù)據(jù)庫,中間件和應(yīng)用編程技術(shù)。這就需要我們要拓寬知識面,不斷補(bǔ)充和學(xué)習(xí)新的技術(shù)。
你在項目中崗位與貢獻(xiàn):
在該項目中,我主要是客戶所請的顧問,代表客戶負(fù)責(zé)定位診斷引起系統(tǒng)停機(jī)的主要原因;負(fù)責(zé)協(xié)調(diào)應(yīng)用開發(fā)商修改程序,系統(tǒng)集成商和系統(tǒng)維護(hù)商搭建模擬測試環(huán)境;負(fù)責(zé)調(diào)整相關(guān)操作系統(tǒng)內(nèi)核參數(shù);在找出問題的原因后負(fù)責(zé)協(xié)助開發(fā)人員修改程序并在測試系統(tǒng)上模擬測試并確保穩(wěn)定可靠運(yùn)行。
項目六:?诿捞m機(jī)場離港系統(tǒng)
項目簡介(功能與用途):
海口美蘭機(jī)場離港系統(tǒng)(Departure Control System 簡稱DCS)主要提供辦理登機(jī)、航班控制和配載平衡三大功能。離港系統(tǒng)是機(jī)場和旅客直接接觸最主要的系統(tǒng)之一,牽涉到旅客辦理登機(jī)手續(xù)、行李托運(yùn)等各個環(huán)節(jié)。
項目難點與解決方案:
?诿捞m機(jī)場離港系統(tǒng)(Departure Control System 簡稱DCS)后臺數(shù)據(jù)庫為DB2數(shù)據(jù)庫,雙機(jī)熱備軟件HACMP,網(wǎng)管軟件為Netview,運(yùn)行在IBM AIX操作系統(tǒng)上,前臺采用Delphi開發(fā)。
該項目的難點主要由以下幾點:
?诿捞m機(jī)場離港系統(tǒng)(Departure Control System 簡稱DCS)是我參與開發(fā)的軟件,該系統(tǒng)在2001年四月份上線后先后出現(xiàn)的性能問題。為此需要對數(shù)據(jù)庫配置參數(shù)作出調(diào)整。
對于上述問題,分別采用了如下解決方案:
在2001年五月一日早上8:30左右,由于離港系統(tǒng)數(shù)據(jù)庫運(yùn)行性能非常低下,我決定對數(shù)據(jù)庫配置參數(shù)作出調(diào)整,于是我在沒有詳細(xì)考慮的情況下,對DB2數(shù)據(jù)庫的相關(guān)配置參數(shù)作出了等于原來10倍的調(diào)整,數(shù)據(jù)庫配置參數(shù)生效后,大概在8:33分左右,離港系統(tǒng)小型機(jī)宕機(jī),直接造成了從早上8:33分到9:40分這將近一小時的停機(jī),直接影響了旅客的登機(jī),辦理值機(jī)手續(xù),廣播,電話和航顯,造成了很大的影響。
項目成功與失敗的經(jīng)驗歸納:
從這次失敗的的經(jīng)過中,我得到如下經(jīng)驗:
1, 系統(tǒng)(操作系統(tǒng),數(shù)據(jù)庫,中間件,應(yīng)用)性能調(diào)整需要循序漸進(jìn),不可一蹴而就。
2, 調(diào)整相關(guān)配置參數(shù)時,需要對該配置參數(shù)有深刻的理解,當(dāng)然這需要不斷的補(bǔ)充理論知識。
3, 在性能調(diào)整時,要做好系統(tǒng)備份和數(shù)據(jù)庫備份,要膽大心細(xì),小心謹(jǐn)慎。
4, 在數(shù)據(jù)庫配置調(diào)整時,一定要有最壞的打算,做好失敗冗余和恢復(fù)方案。
5, 不可完全相信所謂的經(jīng)驗法則,那只是提供一種參考,我就是看了書上說的把緩沖池調(diào)整為系統(tǒng)內(nèi)存的70%這條經(jīng)驗法則才間接導(dǎo)致系統(tǒng)停機(jī)的。
6, 在系統(tǒng)運(yùn)行高峰期間,如果能夠忍受,盡量保持系統(tǒng)的平衡穩(wěn)定運(yùn)行,否則可以嘗試先在備機(jī)或測試機(jī)上調(diào)整。
7, 要不斷的認(rèn)真總結(jié)經(jīng)驗,積累。
8, 要把在書上看到的理論和在實踐中碰到的實際問題結(jié)合起來。
你在項目中崗位與貢獻(xiàn):
失敗的經(jīng)驗是一種寶貴的財富,它對我后期從事性能調(diào)整產(chǎn)生了很深遠(yuǎn)的影響,所以有時候要好好的總結(jié)失敗并從中汲取經(jīng)驗教訓(xùn)。
歡迎光臨 Chinaunix (http://www.72891.cn/) | Powered by Discuz! X3.2 |