湖南省煙草專賣局經(jīng)濟信息中心 劉業(yè)鴻
湖南煙草內(nèi)部專賣管理信息系統(tǒng)技術架構設計
湖南省煙草專賣局經(jīng)濟信息中心 劉業(yè)鴻
【摘要】本文通過對湖南煙草內(nèi)部專賣管理信息系統(tǒng)的現(xiàn)狀進行分析,按照系統(tǒng)設計原則,從應用架構、邏輯架構、系統(tǒng)部署、系統(tǒng)配置、運行環(huán)境五方面進行技術架構設計,提出了數(shù)據(jù)庫性能設計與程序性能優(yōu)化方案。
【關鍵詞】湖南煙草;內(nèi)部專場管理;信息系統(tǒng);技術架構
湖南省2009年開發(fā)使用“湖南煙草內(nèi)部專賣管理監(jiān)督系統(tǒng)”,包括卷煙監(jiān)管模塊和煙葉監(jiān)管模塊,在過去的幾年,內(nèi)部專賣管理監(jiān)督信息系統(tǒng)對湖南省兩煙生產(chǎn)經(jīng)營內(nèi)部監(jiān)管工作的開展起到了重要的支撐作用。2013年,國家局頒布專賣內(nèi)管工作新規(guī)范和新要求,行業(yè)專賣內(nèi)管工作的職責范圍和工作流程都已經(jīng)發(fā)生很大的變化。針對專賣內(nèi)管工作中出現(xiàn)的監(jiān)管措施的設置同現(xiàn)階段生產(chǎn)經(jīng)營實際不符、針對性不強,省市縣三級局缺乏層級間的督促指導、工作質(zhì)量沒保障等問題,為貫徹執(zhí)行行業(yè)內(nèi)部專賣管理監(jiān)督工作新要求和新規(guī)范,抓好全省行業(yè)監(jiān)管重點,加強湖南省內(nèi)部專賣管理監(jiān)督,建立一個符合新的內(nèi)管工作要求同時兼顧湖南省專賣內(nèi)管工作實際需求,并按時與國家局專賣內(nèi)管系統(tǒng)對接成功的內(nèi)管信息系統(tǒng)已迫在眉睫。
省內(nèi)管信息系統(tǒng)的實現(xiàn)目標包括:實現(xiàn)對兩煙生產(chǎn)經(jīng)營的動態(tài)監(jiān)督,對關鍵環(huán)節(jié)進行重點監(jiān)督;實現(xiàn)專賣內(nèi)管工作的委派管理,實現(xiàn)縱向管理和橫向溝通;實現(xiàn)與國家局內(nèi)管信息系統(tǒng)的無縫對接,準確高效地上傳和接收信息;按照“平臺+應用”的模式,搭建智能型業(yè)務監(jiān)管平臺。
本文針對省局內(nèi)管系統(tǒng)進行技術架構設計,包括技術架構、系統(tǒng)部署、系統(tǒng)管理設計、系統(tǒng)性能設計等內(nèi)容。
2.1 設計原則
系統(tǒng)設計堅持“大集中,大協(xié)同、一體化”的技術路線,系統(tǒng)間的交互采用面向服務(SOA)架構的設計思想,采用組件式開發(fā)模式,保證各功能模塊間是低耦合、高內(nèi)聚模式,本系統(tǒng)建設遵循以下的系統(tǒng)設計原則包括:先進性原則、實用性原則、前瞻性、整體性和集成性原則、適應性和擴展性原則、可靠性和安全性原則等。
2.2 設計思路
按照“保障標準落地、掌握行業(yè)動態(tài)、促進內(nèi)管履職、改善監(jiān)管效能,全面推進專賣內(nèi)管上水平”的業(yè)務總體思路,省局專賣內(nèi)管系統(tǒng)的核心技術思路和訴求是:綜合考慮行業(yè)安全保障體系、行業(yè)標準體系和運維保障體系,對接行業(yè)系統(tǒng)、匯集行業(yè)資源、貫徹標準規(guī)范、監(jiān)測行業(yè)動態(tài)和有效督導溝通。
3.1 應用架構
湖南內(nèi)管系統(tǒng)設計采用分層設計的方法,將整個系統(tǒng)劃分為接入層,應用層,公共服務層及數(shù)據(jù)層。
■ 接入層:通過PC終端,登錄到內(nèi)管系統(tǒng)進行日常工作的處理。
■ 應用層:此層主要是系統(tǒng)的各項業(yè)務分類。匯集行業(yè)數(shù)據(jù)、掌握省內(nèi)動態(tài);動態(tài)監(jiān)測,推動各級人員履職;強化督辦的針對性改善監(jiān)管效能。形成專賣內(nèi)管信息資源庫,實現(xiàn)統(tǒng)一資源管理、監(jiān)測與分析。
■ 服務組件:此層主要是整個系統(tǒng)的技術支撐層,包括電子表單、報表工具、流程管理、智能預警。這些組件支撐著整個系統(tǒng)業(yè)務的正常運行。
■ 數(shù)據(jù)層:此層主要是整個系統(tǒng)的使用的數(shù)據(jù),包括內(nèi)管系統(tǒng)本身的數(shù)據(jù)庫外以及從其它業(yè)務系統(tǒng)的數(shù)據(jù)抽取。
3.2 邏輯架構(見圖1)

圖1 系統(tǒng)邏輯架構圖
湖南省內(nèi)管系統(tǒng)按照三大體系、一中心一平臺的方案進行總體設計。
■ 三大體系:按照省局的信息化標準規(guī)范體系、信息化安全體系、運維保障體系的標準來進行架構設計。
■ 一中心一平臺:與數(shù)據(jù)中心進行數(shù)據(jù)交互、獲取數(shù)據(jù);與一體化平臺進行集成,實現(xiàn)單點登錄、待辦任務推送、服務集成、基礎數(shù)據(jù)同步。
3.3 系統(tǒng)部署
部署架構包括:兩臺WAS服務器進行群集部署,分散訪問壓力并保證系統(tǒng)的不間斷性。兩臺數(shù)據(jù)庫服務器做雙機熱備,用來完成數(shù)據(jù)的抽取及運算加工。
3.4 運行環(huán)境
應用服務器操作系統(tǒng):Linux;數(shù)據(jù)庫服務器操作系統(tǒng):AIX;數(shù)據(jù)庫:DB2;應用服務器:Webshere Application Server。
4.1 數(shù)據(jù)分區(qū)
在系統(tǒng)中有一部分數(shù)據(jù)表由于業(yè)務的頻繁,其數(shù)據(jù)增長非常快。針對這種情況采用數(shù)據(jù)庫分區(qū)的方式進行解決。依據(jù)時間段不同,每半年或是每季度進行一次分區(qū)。
4.2 歷史數(shù)據(jù)表
隨著時間的積累,業(yè)務的增長,數(shù)據(jù)表中的數(shù)據(jù)越來越多,增長到一定數(shù)量時將嚴重影響性能,針對這種情況,系統(tǒng)設計時在業(yè)務流程全部完成后將已經(jīng)完成的相關數(shù)據(jù)實時遷移到歷史數(shù)據(jù)表中。這樣將數(shù)據(jù)劃分為2類:運行中的實例數(shù)據(jù)和歷史的實例數(shù)據(jù)。只有當前正在運行的數(shù)據(jù)放在運行表中。
4.3 數(shù)據(jù)預計算
對于較大的預警數(shù)據(jù)量,在后臺進行預計算放到統(tǒng)計表中,客戶查詢時直接查看最終的統(tǒng)計結果。
4.4 表結構設計
數(shù)據(jù)訪問功能分區(qū)設計:配合工作流的數(shù)據(jù)訪問功能分區(qū)設計,將系統(tǒng)的業(yè)務主表也進行分區(qū)設計,建立工作區(qū)、結果區(qū)、歷史區(qū);以保證運行時數(shù)據(jù)庫表的讀取、更新速度。
適當降低數(shù)據(jù)庫設計范式:為了在提升效率,在關鍵的數(shù)據(jù)庫表中適當增加冗余字段,以減少數(shù)據(jù)庫表之間的關聯(lián)。
建立業(yè)務數(shù)據(jù)表:為了滿足不斷增加新的流程、新的業(yè)務的需
求,設計一個比較通用的數(shù)據(jù)庫表,類似于數(shù)據(jù)字典表,當有新的業(yè)務需求,需要增加字段時,只需要在頁面上配置一下屬性就可以完成。
針對并發(fā)性要求,從多線程設計、文件操作設計和代碼性能設計三方面說明。
5.1 多線程設計
在實現(xiàn)某個功能的時候,這個功能可能包含若干方法,所以當程序順序執(zhí)行的時候,執(zhí)行的速度取決于每個方法執(zhí)行時間的總和,但是如果其中某些方法對頁面的展示及跳轉不會產(chǎn)生影響時,這時我們可以采取多線程的策略,提升用戶體驗。
5.2 文件操作設計
由于內(nèi)管系統(tǒng)文件數(shù)量比較少,所有文件操作都保存在數(shù)據(jù)庫里,為方便數(shù)據(jù)傳輸,與國家局文件存儲方式進行統(tǒng)一。為符合集成要求,向門戶推送二進制流的方式進行文件傳輸。考慮到數(shù)據(jù)庫的穩(wěn)定性,可靠性,易于數(shù)據(jù)備份,數(shù)據(jù)遷移等多方面特點,采用了通過數(shù)據(jù)庫大字段的形式存儲文件。
5.3 代碼性能設計
頁面提交采用Ajax技術,主要體現(xiàn)在:把表單內(nèi)容都提交到后臺進行處理,而不用刷新整個前臺頁面,只需要刷新更新的部分;在加載頁面時,先把關鍵部分的內(nèi)容查詢出來顯示,提升用戶體驗,其他的內(nèi)容可以通過Ajax加載。對關鍵部分的數(shù)據(jù)庫操作,直接用SQL進行處理。能獲得比較理想的速度。在編程實現(xiàn)上,應盡量避免一些操作會占用大量的資源和CPU時間的編碼習慣。
5.4 系統(tǒng)緩存設計
為了提高、改善系統(tǒng)的整體性能,在web開發(fā)中使用Java提供的MemoryCache對一些數(shù)據(jù)進行內(nèi)存緩存和通訊共享。我們將系統(tǒng)中的標準數(shù)據(jù)和系統(tǒng)管理數(shù)據(jù)緩存到Memcached中。Memcached客戶端采用觀察者模式監(jiān)控系統(tǒng)中的數(shù)據(jù)變化,當發(fā)現(xiàn)系統(tǒng)緩存的數(shù)據(jù)變化時,自動同步更新Memcached所有集群服務中的對應數(shù)據(jù),包括增加、修該、刪除。
本文對內(nèi)管系統(tǒng)進行了技術架構設計,在開發(fā)過程中,還應考慮數(shù)據(jù)流、數(shù)據(jù)集成、數(shù)據(jù)接口以及數(shù)據(jù)效驗機制等,結合系統(tǒng)的功能以及需求全方位地進行實現(xiàn)。
作者簡介:
劉業(yè)鴻(1973—),女,碩士,研究方向:信息管理與IT技術。