(水利部小浪底水利樞紐管理中心,河南 鄭州 450000)
互聯(lián)網(wǎng)的用戶心理調(diào)查報(bào)告指出,用戶最滿意的網(wǎng)頁打開速度通常在2~5s,如果等待時(shí)間延長(zhǎng)一倍,幾乎所有用戶都會(huì)把頁面關(guān)閉。而對(duì)于一個(gè)水利電子政務(wù)類應(yīng)用系統(tǒng)——OA系統(tǒng)來說,用戶等待時(shí)間過長(zhǎng),會(huì)嚴(yán)重影響水利政務(wù)辦公的效率,使政令和調(diào)令無法準(zhǔn)確、高效的傳遞。
小浪底信息系統(tǒng)技術(shù)攻關(guān)QC小組成立后,運(yùn)用科學(xué)的質(zhì)量管理控制手段對(duì)小浪底信息化建設(shè)、運(yùn)維過程中產(chǎn)生的各類技術(shù)難點(diǎn)進(jìn)行攻關(guān)。小浪底OA系統(tǒng)改造完成上線試運(yùn)行后,用戶普遍反映系統(tǒng)頁面打開速度較慢或很慢,經(jīng)測(cè)試達(dá)4~15s,嚴(yán)重影響用戶正常辦公使用。因此,QC小組著力于提高數(shù)字化辦公平臺(tái)用戶響應(yīng)速度,于OA系統(tǒng)上線試運(yùn)行的過程中同步開展活動(dòng)。
QC小組成員在不同時(shí)間、不同地點(diǎn)、不同使用環(huán)境下,使用谷歌開發(fā)者響應(yīng)工具分別對(duì)用戶打開首頁、打開二級(jí)頁面和打開公文工作流的響應(yīng)速度做了量化測(cè)試。時(shí)間量化標(biāo)準(zhǔn)為“整個(gè)網(wǎng)頁的資源全部加載完畢”。
接下來,在不同時(shí)間段進(jìn)行了20次測(cè)試,結(jié)果為首頁3.8~6.3s,二級(jí)頁面5~9.8s,工作流6.9~14.9s;在不同地點(diǎn)做了15次測(cè)試,結(jié)果為首頁4.2~5.6s,二級(jí)頁面5.3~7.2s,工作流7.1~11s;在不同使用環(huán)境下做了10次測(cè)試,結(jié)果為首頁4.6~7.5s,二級(jí)頁面5.3~10.8s,工作流7~16.1s?,F(xiàn)狀調(diào)查結(jié)果見表1。
表1現(xiàn)狀調(diào)查結(jié)果
根據(jù)以上調(diào)查結(jié)果可以發(fā)現(xiàn),OA系統(tǒng)無論在何種情況下響應(yīng)均較緩慢,這初步排除了大規(guī)模的用戶因素,將問題重點(diǎn)收縮至系統(tǒng)自身。具體的癥結(jié)還需在接下來的步驟中進(jìn)一步推敲。
經(jīng)過小組成員認(rèn)真分析、討論,認(rèn)為要做到讓小浪底OA系統(tǒng)用戶獲得較佳的訪問體驗(yàn),系統(tǒng)響應(yīng)時(shí)間不應(yīng)大于4s;若要讓用戶獲得最佳的訪問體驗(yàn),則打開時(shí)間最好在2s以內(nèi)。
結(jié)合小浪底OA系統(tǒng)的軟硬件架構(gòu)情況、網(wǎng)絡(luò)和機(jī)房環(huán)境情況、用戶計(jì)算機(jī)使用環(huán)境情況等多方面因素,OA系統(tǒng)的用戶響應(yīng)速度預(yù)設(shè)提高至打開首頁2s以內(nèi),打開二級(jí)頁面、公文工作流3s以內(nèi)。
軟件系統(tǒng)出現(xiàn)問題的可能因素眾多。通過采用頭腦風(fēng)暴法,QC小組成員提出了30余條可能影響OA響應(yīng)速度的原因。將這些原因中的要素進(jìn)行信息關(guān)聯(lián)、分類聯(lián)想、系統(tǒng)判別后,初步整理為以下5個(gè)方面:用戶原因、網(wǎng)絡(luò)原因、服務(wù)器原因、應(yīng)用系統(tǒng)原因和數(shù)據(jù)庫(kù)原因。QC小組選用樹狀分析圖對(duì)這5個(gè)方面進(jìn)行更深入的分析。
小浪底OA系統(tǒng)的用戶數(shù)量在1500個(gè)左右,每位用戶使用的計(jì)算機(jī)新舊程度不一、品牌型號(hào)分布廣泛,操作系統(tǒng)和瀏覽器也涵蓋多種版本。針對(duì)9條用戶方面的可能原因,通過下發(fā)調(diào)查問卷、采集日常運(yùn)維信息、實(shí)地走訪用戶等方式,逐條歸納出該可能原因?qū)е碌暮蠊瑓R總統(tǒng)計(jì)出所占的用戶比例。結(jié)果發(fā)現(xiàn),有4條可能原因的用戶數(shù)量占比較大(其中1條用戶數(shù)超過50%)、1條可能原因的流程總數(shù)較一般OA系統(tǒng)來得更多。其余4條可能原因被排除,詳見圖1。
圖1 用戶原因樹狀分析
水利樞紐的建設(shè)特點(diǎn)決定了小浪底職工分布在幾塊地域工作生活,其間網(wǎng)絡(luò)結(jié)構(gòu)復(fù)雜、網(wǎng)間互聯(lián)距離較長(zhǎng)、節(jié)點(diǎn)與路由眾多。QC小組針對(duì)3條用戶方面的可能原因,逐條進(jìn)行技術(shù)排查,均未發(fā)現(xiàn)可影響OA用戶訪問速度的因素。故這3條可能原因被排除,詳見圖2。
圖2 網(wǎng)絡(luò)原因樹狀分析
服務(wù)器是應(yīng)用系統(tǒng)運(yùn)行的基礎(chǔ)平臺(tái)。小浪底OA系統(tǒng)2016年升級(jí)改造共使用5臺(tái)國(guó)產(chǎn)服務(wù)器、2臺(tái)磁盤陣列,其中兩臺(tái)應(yīng)用服務(wù)器使用Rose HA軟件實(shí)現(xiàn)高可用配置。QC小組針對(duì)6條服務(wù)器方面的可能原因,結(jié)合OA系統(tǒng)試運(yùn)行期間的運(yùn)維記錄逐條進(jìn)行測(cè)試,發(fā)現(xiàn)有1條可能原因的參數(shù)配置會(huì)產(chǎn)生I/O系統(tǒng)問題。其余5條可能原因被排除,詳見圖3。
小浪底OA系統(tǒng)為J2EE架構(gòu),滿足SOA總線要求。前端使用國(guó)產(chǎn)CMS產(chǎn)品,后端使用國(guó)產(chǎn)工作流產(chǎn)品和權(quán)限管理平臺(tái),整體使用SSM框架+輕量級(jí)UI構(gòu)建。PC前后端、移動(dòng)端均通過國(guó)產(chǎn)SSO平臺(tái)實(shí)現(xiàn)統(tǒng)一登錄,并開放各類接口與其他系統(tǒng)交互。小浪底OA系統(tǒng)的二次開發(fā)量較大,所以是QC小組的重點(diǎn)檢查方向。針對(duì)12條可能原因,小組成員通過多種軟件測(cè)試方法進(jìn)行逐一排查,發(fā)現(xiàn)其中4條可能原因所產(chǎn)生的數(shù)據(jù)指標(biāo)相比正常B/S結(jié)構(gòu)軟件產(chǎn)品有所不足(其中1條指標(biāo)較差)。其余8條可能原因被排除。詳見圖4。
圖3 服務(wù)器原因樹狀分析
圖4 應(yīng)用系統(tǒng)原因樹狀分析
小浪底OA系統(tǒng)使用Oracle 11g作為數(shù)據(jù)庫(kù),使用同門產(chǎn)品Weblogic作為中間件。在一套應(yīng)用系統(tǒng)中,數(shù)據(jù)庫(kù)設(shè)計(jì)得好與壞,會(huì)直接影響到系統(tǒng)整體的響應(yīng)情況。QC小組在對(duì)8條數(shù)據(jù)庫(kù)方面可能原因的詳細(xì)檢查中,發(fā)現(xiàn)有5條存在問題(其中3條可能存在較為嚴(yán)重的問題),影響了數(shù)據(jù)庫(kù)的查詢效率和響應(yīng)時(shí)間。其余3條可能原因被排除,詳見圖5。
通過原因分析,QC小組得到了15條最可能的問題原因,見表2。
通過調(diào)查分析、現(xiàn)場(chǎng)驗(yàn)證、實(shí)地測(cè)試和運(yùn)用軟件工程中的白盒測(cè)試、回歸測(cè)試、卸載測(cè)試、壓力測(cè)試等方法,QC小組成員對(duì)15條最可能的原因依次枚舉驗(yàn)證。以繪制直方圖、散布圖、推移圖等方式,最終得到7條下面逐條簡(jiǎn)述這15條最可能原因的驗(yàn)證分析過程。
圖5 數(shù)據(jù)庫(kù)原因樹狀分析
直接影響OA系統(tǒng)響應(yīng)速度的末端因素,詳見圖6。
圖6 確定主要原因
QC小組共訪問了近300位用戶,約2/3的用戶在使用IE9版本或更低版本,小浪底OA系統(tǒng)最低適配的IE內(nèi)核版本為9,過低的版本會(huì)造成頁面出現(xiàn)兼容性問題,導(dǎo)致卡頓。因此,急需將用戶瀏覽器都升級(jí)到一個(gè)較高的版本,此問題定為主要原因。
與用戶瀏覽器版本同時(shí)進(jìn)行的調(diào)查還包括小浪底OA系統(tǒng)的兩個(gè)核心支撐組件:RiseOffice控件和RiseWord控件。接近90%用戶的組件版本是V3,新的V5版本能更佳地適應(yīng)瀏覽器,同時(shí)避免頁面渲染時(shí)出現(xiàn)的奇怪問題。因此,急需將小浪底用戶瀏覽器支撐組件都升級(jí)到新版本,此問題定為主要原因。
在對(duì)用戶進(jìn)行調(diào)查的過程中,QC小組遇到了各式各樣的瀏覽器或插件問題,但小組成員發(fā)現(xiàn),大多數(shù)問題都可以通過“卸載有問題的插件”“重置瀏覽器”“升級(jí)瀏覽器到新版本”等方法快速解決。鑒于此問題大都可解,且解決方法與前述兩條原因有所重復(fù),此問題定為非主要原因。
小浪底OA系統(tǒng)的主要支撐控件不支持非IE內(nèi)核瀏覽器(如谷歌、火狐等),使用這類瀏覽器的用戶會(huì)遇到控件長(zhǎng)時(shí)間卡頓、無法加載等問題。QC小組成員在調(diào)查過程中發(fā)現(xiàn),此類用戶數(shù)量不多,并且在告知其“請(qǐng)使用IE瀏覽器打開OA系統(tǒng)辦公”時(shí),大家都能理解和接受。此問題定為非主要原因。
小浪底OA系統(tǒng)的工作流引擎需要在啟動(dòng)時(shí)一次性將所有流程加載完畢。經(jīng)過QC小組統(tǒng)計(jì),目前OA系統(tǒng)中共有177條在用流程、153條歷史流程,啟動(dòng)后流程引擎占據(jù)了10.3GB內(nèi)存空間。為了確定這些流程對(duì)服務(wù)器整體響應(yīng)速度的影響,QC小組成員對(duì)流程引擎進(jìn)行了由空載至滿載的加載測(cè)試。
測(cè)試結(jié)果表明:隨著工作流引擎加載流程數(shù)不斷增加,其內(nèi)存占用量基本成線性倍數(shù)增長(zhǎng),而服務(wù)響應(yīng)速度的變化趨勢(shì)不大,響應(yīng)時(shí)間均在可接受范圍內(nèi),此問題定為非主要原因。
為避免資源消耗過大,OA系統(tǒng)所使用的Linux操作系統(tǒng)對(duì)同一時(shí)間用戶、進(jìn)程打開的文件數(shù)量有所限制。QC小組通過檢查發(fā)現(xiàn),在當(dāng)前系統(tǒng)配置下,文件限制數(shù)為1024個(gè),超限后偶爾會(huì)引發(fā)文件打開報(bào)錯(cuò)。經(jīng)過模擬超限測(cè)試,QC小組確認(rèn)此問題出現(xiàn)時(shí)不會(huì)影響到用戶的響應(yīng)速度,且通過簡(jiǎn)單修改系統(tǒng)配置即可解決,此問題定為非主要原因。
OA系統(tǒng)的并發(fā)訪問量是重要的性能參數(shù),QC小組選用Stress Testing壓力測(cè)試工具作為并發(fā)訪問量測(cè)試工具。測(cè)試結(jié)果顯示,隨著用戶并發(fā)量從0增加至500,系統(tǒng)響應(yīng)時(shí)間也隨之成平穩(wěn)線性增長(zhǎng),沒有突然的指數(shù)性爆發(fā)。這說明用戶的并發(fā)量增加不會(huì)導(dǎo)致OA系統(tǒng)出現(xiàn)嚴(yán)重響應(yīng)拖延。
當(dāng)用戶訪問應(yīng)用系統(tǒng)時(shí),頁面資源按需加載到用戶瀏覽器中。若同一時(shí)間請(qǐng)求某個(gè)較大資源的用戶數(shù)過多,反復(fù)加載的過程會(huì)造成服務(wù)器性能下降。QC小組對(duì)大小超過300kb的公用資源進(jìn)行了1h內(nèi)同時(shí)被調(diào)用的次數(shù)最大值統(tǒng)計(jì),結(jié)果顯示,各類公用資源在用戶加載頁面時(shí)幾乎都會(huì)調(diào)用,且加載次數(shù)相差不大,沒有出現(xiàn)某個(gè)資源明顯多于其他對(duì)系統(tǒng)響應(yīng)影響較大的情況,確定OA系統(tǒng)單一資源同時(shí)調(diào)用169次屬正常情況,此問題定為非主要原因。
當(dāng)Web頁面布局設(shè)計(jì)不合理時(shí),用戶端瀏覽器引擎會(huì)付出額外的開銷來修正到正確的顯示狀態(tài),或者出現(xiàn)渲染錯(cuò)誤,導(dǎo)致卡頓。
QC小組將OA首頁中所有大型資源逐個(gè)除去,再將CSS樣式調(diào)整到最簡(jiǎn)狀態(tài),每次都進(jìn)行頁面渲染時(shí)間測(cè)試。結(jié)果表明,資源去除干凈后,首頁渲染時(shí)間與CSS最簡(jiǎn)狀態(tài)的時(shí)間之差已經(jīng)很小,頁面布局對(duì)OA響應(yīng)速度的影響已可忽略不計(jì),此問題定為非主要原因。
如今越來越復(fù)雜的動(dòng)態(tài)頁面給服務(wù)器造成了越來越大的資源開銷壓力。QC小組成員首先測(cè)試了OA系統(tǒng)不同頁面的動(dòng)態(tài)資源請(qǐng)求次數(shù),發(fā)現(xiàn)“資訊中心”的請(qǐng)求數(shù)最多,然后,又進(jìn)行了一組針對(duì)性的“動(dòng)態(tài)資源卸載與系統(tǒng)響應(yīng)時(shí)間”對(duì)比實(shí)驗(yàn)。結(jié)果清晰表明,隨著動(dòng)態(tài)資源的卸載,資訊中心單頁面的訪問速度有了質(zhì)的飛躍,從9.6s飛躍至1.6s。這說明了兩點(diǎn):?資訊中心頁面的動(dòng)態(tài)化程度太高,已經(jīng)使服務(wù)器產(chǎn)生了較重負(fù)載;?去除不必要的動(dòng)態(tài)資源,是提高頁面訪問速度的有效方法之一。此問題定為主要原因。
數(shù)據(jù)庫(kù)系統(tǒng)對(duì)同時(shí)訪問某個(gè)實(shí)例的連接數(shù)不應(yīng)限制得太小,QC小組首先檢查了OA系統(tǒng)當(dāng)前的Oracle數(shù)據(jù)庫(kù)連接數(shù),數(shù)值為150,然后QC小組模擬了在不同用戶并發(fā)操作下,這個(gè)限制對(duì)SQL語句執(zhí)行帶來的影響。結(jié)果表明,當(dāng)用戶并發(fā)操作超過150時(shí),超出部分即進(jìn)入等待隊(duì)列;且隨著時(shí)間延長(zhǎng),部分等待的連接已超時(shí)丟失。小浪底OA系統(tǒng)目前用戶數(shù)已過千人,按15%~20%并發(fā)計(jì)算,此限制確實(shí)會(huì)導(dǎo)致用戶出現(xiàn)問題。此問題定為主要原因。
數(shù)據(jù)表的索引若出現(xiàn)錯(cuò)誤或沒有建立,會(huì)大大影響庫(kù)表查詢操作效率。QC小組經(jīng)過仔細(xì)檢查,發(fā)現(xiàn)從原OA系統(tǒng)遷移過來的數(shù)據(jù)表,索引還使用的是老字段,目前已經(jīng)不起任何作用。此部分表數(shù)量約占新OA系統(tǒng)的20%左右。通過SQL操作耗時(shí)記錄可以看出,單表查詢和多表聯(lián)合查詢耗時(shí)均遠(yuǎn)超正常SQL語句執(zhí)行時(shí)間。此問題定為主要原因。
Oracle等大型數(shù)據(jù)庫(kù)使用連接池技術(shù)以增加數(shù)據(jù)庫(kù)連接的復(fù)用性、可靠性和效率。但若應(yīng)用開發(fā)者對(duì)連接池的設(shè)計(jì)不合理,就可能導(dǎo)致程序在使用完連接池中的資源后,無法及時(shí)關(guān)閉、歸還資源,使連接池中的資源慢慢泄露,最后導(dǎo)致數(shù)據(jù)庫(kù)拒絕任何新的連接請(qǐng)求。
QC小組對(duì)OA系統(tǒng)經(jīng)過檢查調(diào)試,發(fā)現(xiàn)了一個(gè)連接池問題。經(jīng)修復(fù)后,證實(shí)此問題與OA系統(tǒng)的響應(yīng)速度沒有直接關(guān)系。此問題定為非主要原因。
SQL語句是任何應(yīng)用信息系統(tǒng)的靈魂。一個(gè)好的SQL語句能大大提升數(shù)據(jù)的增刪改查速度;反之,一個(gè)冗余的、含有隱性錯(cuò)誤的SQL語句能將系統(tǒng)拖入消耗資源的泥潭中不能自拔。QC小組選用Oracle Automatic Workload Repository工具(自動(dòng)工作負(fù)載信息庫(kù))進(jìn)行資源消耗的Top10分析。經(jīng)過仔細(xì)檢查,找到6條執(zhí)行時(shí)間大大超過正常狀態(tài)的SQL語句。每一次的執(zhí)行延遲加在一起,給系統(tǒng)響應(yīng)速度帶來了巨大的影響。經(jīng)討論,此問題定為主要原因。
若一張數(shù)據(jù)庫(kù)表的體積太大,則對(duì)其進(jìn)行SQL操作的耗時(shí)將成倍增加。對(duì)這些過大的表進(jìn)行分區(qū)優(yōu)化處理,是一種提高SQL執(zhí)行效率的有效方法。QC小組成員對(duì)OA系統(tǒng)數(shù)據(jù)庫(kù)中的表大小進(jìn)行了仔細(xì)的梳理,發(fā)現(xiàn)從原OA系統(tǒng)中遷移過來的一張經(jīng)常訪問的附件表,體積已經(jīng)高達(dá)10.5GB,執(zhí)行聯(lián)合查詢的耗時(shí)遠(yuǎn)超正常水平。經(jīng)討論,此問題定為主要原因。
一個(gè)應(yīng)用信息系統(tǒng)的程序、模塊、數(shù)據(jù)庫(kù)等部分之間具有緊密的聯(lián)系,對(duì)其進(jìn)行任何更新、改造等活動(dòng),都有造成系統(tǒng)癱瘓的風(fēng)險(xiǎn),且此類風(fēng)險(xiǎn)很難完全避免。因此,在對(duì)策實(shí)施前,QC小組首先采用PDPC圖工具對(duì)實(shí)施過程中可能遇到的最壞風(fēng)險(xiǎn)進(jìn)行了處置過程預(yù)估。詳見圖7。
對(duì)于OA系統(tǒng)來說,最壞的可能風(fēng)險(xiǎn)是在實(shí)施過程中出現(xiàn)OA系統(tǒng)癱瘓。當(dāng)出現(xiàn)此類嚴(yán)重問題時(shí),首先應(yīng)盡快判斷問題所屬的分類,其次通過PDPC圖中對(duì)應(yīng)的流程模塊針對(duì)出現(xiàn)問題的分類進(jìn)行后續(xù)檢查和處理。當(dāng)問題處理妥當(dāng),流程進(jìn)入綠色區(qū)域時(shí),即可認(rèn)為OA系統(tǒng)癱瘓問題已成功解決;當(dāng)流程最終進(jìn)入紅色區(qū)域時(shí),應(yīng)及時(shí)做好災(zāi)難應(yīng)對(duì)和解釋上報(bào),停止后續(xù)對(duì)策實(shí)施工作,查明原因并拿出切實(shí)有效的預(yù)防措施后再行繼續(xù)。
針對(duì)已得到的7條主要原因末端因素,QC小組按照5W1H的原則,經(jīng)過討論,按技術(shù)要求將原因分為3組,分別制定了目標(biāo)和措施,并將每項(xiàng)措施落實(shí)到專人,同時(shí)規(guī)定了起止時(shí)間和活動(dòng)地點(diǎn)。
6.2.1 用戶瀏覽器版本過低
通過前面的活動(dòng)過程,QC小組成員經(jīng)過討論,對(duì)此問題設(shè)立的目標(biāo)是:將用戶瀏覽器的版本升級(jí)至IE11。針對(duì)此目標(biāo),最有效的對(duì)策是通過逐級(jí)、分批地下載、安裝來升級(jí)用戶IE內(nèi)核瀏覽器版本到Ver 11。根據(jù)小浪底OA系統(tǒng)用戶分布地域廣泛的特點(diǎn),該對(duì)策在兩地分幾個(gè)批次實(shí)施,最終達(dá)到覆蓋全用戶的目的。
2017年11月5—30日,由QC小組成員牽頭在鄭州生產(chǎn)調(diào)度中心對(duì)用戶進(jìn)行了逐屋排查,共排查116位,發(fā)現(xiàn)問題用戶47位;11月5—30日,由QC小組成員牽頭在小浪底水利樞紐管理區(qū)對(duì)用戶進(jìn)行了逐屋排查,共排查422位,發(fā)現(xiàn)問題用戶201位。以上均予以解決。
本次對(duì)策實(shí)施結(jié)果將小浪底各用戶的IE瀏覽器版本統(tǒng)一為IE11。升級(jí)后的用戶瀏覽器,打開OA系統(tǒng)沒有再出現(xiàn)原來的各類奇怪問題和兼容性問題,沒有卡頓和等待,用戶使用體驗(yàn)得到了提升。
6.2.2 用戶瀏覽器支撐組件版本過低
通過前面的活動(dòng)過程,QC小組成員經(jīng)過討論,對(duì)此問題設(shè)立的目標(biāo)是:將用戶瀏覽器支撐組件的版本升級(jí)至Ver5。針對(duì)此目標(biāo),最有效的對(duì)策是通過U盤拷貝安裝程序的方式逐級(jí)、分批地升級(jí)用戶瀏覽器RiseOffice和RiseWord支撐組件版本到Ver 5.0.1.2。根據(jù)小浪底OA系統(tǒng)用戶分布地域廣泛的特點(diǎn),該對(duì)策同樣在兩地分幾個(gè)批次實(shí)施,最終達(dá)到覆蓋全用戶的目的。
因本條對(duì)策實(shí)施過程與“用戶瀏覽器版本過低”對(duì)策類似,都需要對(duì)所有用戶進(jìn)行走訪以及對(duì)用戶瀏覽器進(jìn)行維護(hù)操作,在技術(shù)上具有相似性,在時(shí)間和所耗精力上具有重復(fù)性。為了使本次QC活動(dòng)具有更佳的經(jīng)濟(jì)性,經(jīng)QC小組仔細(xì)分析討論,決定本條對(duì)策與“用戶瀏覽器版本過低”同人、同時(shí)實(shí)施。
5.獨(dú)有的特異類寶石。昌樂不僅產(chǎn)出了世界公認(rèn)的極品類型的藍(lán)寶石,而且產(chǎn)出了大量珍貴的多彩藍(lán)寶石,其中不乏國(guó)寶級(jí)珍品。如半為黃色半為藍(lán)色的鴛鴦藍(lán)寶石為世界獨(dú)有,具有極高的文化價(jià)值和收藏價(jià)值。另外,部分昌樂藍(lán)寶石中含有奇特的包裹體,不少有奇異的活光效應(yīng),形成了各式各樣的精美圖案。如“西天取經(jīng)”“魚探龍宮”“一帆風(fēng)順”均屬世界罕見珍品,價(jià)值連城。
經(jīng)過在鄭州生產(chǎn)調(diào)度中心排查116位,發(fā)現(xiàn)問題用戶69位;在小浪底水利樞紐管理區(qū)對(duì)排查422位,發(fā)現(xiàn)問題用戶280位。以上均予以解決。
本次對(duì)策實(shí)施結(jié)果將小浪底各用戶的IE瀏覽器支撐組件版本統(tǒng)一為Ver5。升級(jí)后的用戶瀏覽器,打開OA系統(tǒng)沒有再出現(xiàn)原來的各類奇怪問題和兼容性問題,沒有卡頓和等待,用戶使用體驗(yàn)得到了提升。
6.2.3 頁面動(dòng)態(tài)資源和元素過多
通過前面的活動(dòng)過程,QC小組成員經(jīng)過討論,對(duì)此問題設(shè)立的目標(biāo)是:用戶訪問資訊中心頁面時(shí),加載的資源和元素不超過20個(gè)。要想達(dá)到此目標(biāo),需要盡可能減少資訊中心頁面的動(dòng)態(tài)化程度。針對(duì)此問題,有兩種解決方案:
a.將大的動(dòng)態(tài)頁面拆分成幾個(gè)小的頁面,同時(shí)加載,提高用戶端體驗(yàn)。但此方法仍無法免除服務(wù)器端重負(fù)載問題。
b.將動(dòng)態(tài)頁面通過技術(shù)手段轉(zhuǎn)換成靜態(tài)化頁面,提供給用戶訪問。這種方式具有效率極高的特點(diǎn),且靜態(tài)化后頁面的安全程度有較大提升,是當(dāng)前IT界廣泛采用的方式。
QC小組經(jīng)過分析研討,認(rèn)為最有效的對(duì)策是將資訊中心的頁面進(jìn)行靜態(tài)化處理,讓用戶訪問靜態(tài)化之后的頁面,免除動(dòng)態(tài)資源加載的耗時(shí)。2017年12月10日在鄭州生產(chǎn)調(diào)度中心開始對(duì)OA系統(tǒng)資訊中心頁面實(shí)施逐步靜態(tài)化處理。至12月26日,該項(xiàng)對(duì)策比計(jì)劃工期提前4天實(shí)施完畢。
在實(shí)施該對(duì)策的過程中,OA項(xiàng)目開發(fā)組接到了關(guān)于在資訊中心開發(fā)公司頁面上增設(shè)欄目和圖像的需求。經(jīng)過需求分析和小組討論,QC小組及時(shí)將此項(xiàng)對(duì)策的目標(biāo)修改為:用戶訪問資訊中心頁面時(shí),加載的資源和元素不超過30個(gè)。
6.2.4 Oracle數(shù)據(jù)庫(kù)連接數(shù)上限設(shè)置不足
通過前面的活動(dòng)過程,QC小組成員經(jīng)過討論,對(duì)此問題設(shè)立的目標(biāo)是:將數(shù)據(jù)庫(kù)連接數(shù)上限值提高至1000。針對(duì)此目標(biāo),最有效的對(duì)策是通過停止數(shù)據(jù)庫(kù)實(shí)例、修改數(shù)據(jù)庫(kù)連接數(shù)限制值,將其改動(dòng)到目標(biāo)值。
2017年12月12日在鄭州生產(chǎn)調(diào)度中心辦公樓開始調(diào)整數(shù)據(jù)庫(kù)。至12月15日處理完畢。經(jīng)過查詢,確認(rèn)已將Oracle數(shù)據(jù)庫(kù)連接數(shù)上限調(diào)整至1000。經(jīng)Stress Testing工具進(jìn)行壓力測(cè)試,并發(fā)100~500用戶時(shí)均能保持穩(wěn)定的服務(wù)狀態(tài),隊(duì)列很快就全部接入連接池。
6.2.5 SQL語句編寫、優(yōu)化不到位
通過前面的活動(dòng)過程,QC小組成員經(jīng)過討論,對(duì)此問題設(shè)立的目標(biāo)是:使重新編寫的SQL語句執(zhí)行效率至少提高10倍。針對(duì)此目標(biāo),最有效的對(duì)策是針對(duì)小浪底用戶業(yè)務(wù)邏輯和系統(tǒng)實(shí)際情況,對(duì)SQL語句進(jìn)行重構(gòu)和深度優(yōu)化,重新編寫高效率的SQL語句并測(cè)試生效。
2017年12月16日開始對(duì)SQL進(jìn)行分析和優(yōu)化。至12月30日,6條執(zhí)行時(shí)間過長(zhǎng)的SQL語句全部?jī)?yōu)化完畢。對(duì)包含這幾條SQL語句的頁面及功能進(jìn)行測(cè)試后,發(fā)現(xiàn)打開前端信息頁面和后端公文頁面的時(shí)間都有較大幅度縮短。
QC小組成員查看該頁面對(duì)應(yīng)的有效SQL語句,發(fā)現(xiàn)查詢耗時(shí)和Cost值(查詢開銷)已降至個(gè)位數(shù)。此時(shí)的效率與優(yōu)化前相比,已產(chǎn)生5000倍以上的提升,大大超越目標(biāo)值。
6.2.6 數(shù)據(jù)表沒有建立索引或索引字段不對(duì)
通過前面的活動(dòng)過程,對(duì)此問題設(shè)立的目標(biāo)是:使數(shù)據(jù)表訪問速度比目前至少提高20倍。針對(duì)此目標(biāo),最有效的對(duì)策是檢查所有數(shù)據(jù)表,刪除無效和錯(cuò)誤的表字段索引,重建該表主鍵與索引并驗(yàn)證。
2018年1月1日開始進(jìn)行對(duì)策實(shí)施。至1月10日,所有索引無效或出錯(cuò)的數(shù)據(jù)表均已處理完畢。
通過對(duì)占數(shù)據(jù)表總數(shù)近20%的問題表進(jìn)行索引重建,這些數(shù)據(jù)表的查詢效率得到極大的提升。QC小組選擇其中一張熱點(diǎn)數(shù)據(jù)表進(jìn)行驗(yàn)證,其Cost值降至個(gè)位數(shù),效率和未重建索引前相比提升3000多倍,大大超越目標(biāo)值。
6.2.7 單一表空間過大
通過前面的活動(dòng)過程,對(duì)原OA系統(tǒng)中遷移來的熱點(diǎn)附件表體積過大導(dǎo)致查詢效率低下問題而設(shè)立的目標(biāo)是:使針對(duì)該表的查詢效率至少提高5倍。針對(duì)此目標(biāo),最有效的對(duì)策是新建分區(qū)表空間,將原表切割后分塊遷移至新表內(nèi),再重建分區(qū)索引,對(duì)表空間進(jìn)行優(yōu)化后驗(yàn)證。
2018年1月10日開始進(jìn)行對(duì)策實(shí)施。至1月15日,所有過大的數(shù)據(jù)表均已分區(qū)遷移完畢。在對(duì)遷移表中最大的10.5GB附件表進(jìn)行分區(qū)重建表空間、優(yōu)化分區(qū)索引等對(duì)策實(shí)施后,該表的Cost值降低了一半。
但這個(gè)結(jié)果沒有達(dá)到本條對(duì)策實(shí)施的目標(biāo)要求。QC小組成員通過交流討論得知,對(duì)于體積過大的單一數(shù)據(jù)表,目前已經(jīng)做完所有可用的優(yōu)化操作;若還想使其更快,只能改變數(shù)據(jù)庫(kù)本身架構(gòu)(如采用分布式或內(nèi)存式數(shù)據(jù)庫(kù)等)。這已經(jīng)脫離了本次OA系統(tǒng)升級(jí)改造項(xiàng)目的范疇,無法予以實(shí)施。因此,QC小組經(jīng)過慎重討論,決定將此對(duì)策的目標(biāo)修改為:使針對(duì)該表的查詢效率至少提高2倍。
綜合不同時(shí)間、不同地點(diǎn)、不同使用環(huán)境3種情況,對(duì)OA系統(tǒng)響應(yīng)速度進(jìn)行了復(fù)測(cè)統(tǒng)計(jì)。統(tǒng)計(jì)結(jié)果見表3。
表3活動(dòng)效果復(fù)測(cè)統(tǒng)計(jì)
表3中綠色數(shù)值為達(dá)標(biāo)數(shù)值。通過此次QC小組活動(dòng),已將小浪底OA系統(tǒng)的用戶響應(yīng)速度很好地控制在目標(biāo)范圍以內(nèi)。本次小組活動(dòng)目標(biāo)成功實(shí)現(xiàn)。
因?yàn)镺A系統(tǒng)響應(yīng)速度的提升,使小浪底用戶的辦公效率得到極大提升,水利政令和調(diào)令的上傳下達(dá)變得準(zhǔn)確、高效,水利公文事務(wù)的流轉(zhuǎn)也變得及時(shí)、通暢,用戶主動(dòng)辦公的意愿得到了較大提升,OA系統(tǒng)也得到了用戶的一致好評(píng)。
本次活動(dòng)的成功為其他水利電子政務(wù)和水利信息化系統(tǒng)的建設(shè)、運(yùn)維和調(diào)整優(yōu)化提供了切實(shí)可行的經(jīng)驗(yàn)。
為了進(jìn)一步鞏固此次活動(dòng)成果,小組成員根據(jù)對(duì)策實(shí)施結(jié)果和小浪底OA系統(tǒng)用戶實(shí)際情況,制定了以下鞏固措施:
a.提高用戶終端運(yùn)維頻次和水平。目前已對(duì)用戶終端的運(yùn)維頻次和方法進(jìn)行了量化,所形成的指標(biāo)和要求已寫進(jìn)《小浪底信息化系統(tǒng)用戶終端運(yùn)維規(guī)范》中,后續(xù)會(huì)加強(qiáng)執(zhí)行。
b.定期對(duì)OA系統(tǒng)數(shù)據(jù)庫(kù)進(jìn)行優(yōu)化。在活動(dòng)結(jié)束后,小組將每年對(duì)OA系統(tǒng)數(shù)據(jù)庫(kù)進(jìn)行優(yōu)化的頻次、方式方法等匯總成報(bào)告,上報(bào)公司領(lǐng)導(dǎo)進(jìn)行審批,確保數(shù)據(jù)庫(kù)能不斷以最優(yōu)的性能狀態(tài)給程序提供可靠服務(wù)。
c.加強(qiáng)對(duì)服務(wù)器等硬件設(shè)備的維護(hù)。目前已將對(duì)服務(wù)器等硬件設(shè)備加強(qiáng)巡檢和維護(hù)的方法和指標(biāo)寫進(jìn)“日巡檢表”“周巡檢表”和“月巡檢表”等文檔,下一步將會(huì)加強(qiáng)監(jiān)督、檢查,確保執(zhí)行落地、到位。