李毓堯 丁杰 許久晨



摘要:隨著國產自主可控基礎軟硬件的快速發展和逐步成熟,基于自主可控平臺的信息系統也逐步在政企單位得到越來越多的應用。然而,仍有大量基于非自主可控平臺建設的信息系統面臨著自主可控適配改造的工作。文章通過對某大型企業網上報銷系統的自主可控適配改造工作進行分析和研究,總結信息系統自主可控改造過程中的經驗教訓和改進分析,為信息系統自主可控改造適配工作提供借鑒和參考。
關鍵詞:網上報銷系統;自主可控;改造實踐
中圖分類號:TP393? ? ? 文獻標識碼:A
文章編號:1009-3044(2024)09-0047-03
開放科學(資源服務)標識碼(OSID)
0 引言
自主可控是保障網絡安全、信息安全的前提。從IT基礎設施、基礎軟件到應用軟件的全面自主可控,形成自有開放生態,是解決在信息化關鍵領域“卡脖子”和保障網絡信息安全的重要前提。現有信息系統中大量使用的進口計算機軟硬件產品,都可能存在尚未發現的內置后門和潛在漏洞,從而成為失泄密乃至信息系統正常運行的重大安全隱患[1]。然而,現有系統在自主可控和性能方面存在一定的局限性和不足。通過開展信息系統自主可控改造適配工作,保障企業報銷業務的正常運轉,增強系統安全性與可靠性迫在眉睫。
1 系統現狀分析
大型企業網上報銷系統是當今企業財務管理中必不可少的一部分,它的自主可控性和數據安全性對企業的正常運營至關重要。對于現有系統的現狀進行分析,識別出可能存在的問題和不足,是實現系統開展自主可控適配改造的基礎和前提。
1.1 系統部署環境分析
系統由多臺Windows服務器部署,服務器采用Intel處理器,應用為前后端分離部署,中間件為Tomcat 9.0,數據庫為Oracle 19C。根據自主可控相關產品調研,企業一致決定采購國產化軟硬件,包括服務器采用鯤鵬920處理器、銀河麒麟V10操作系統,中間件為東方通的TongWeb7.0.9,數據庫采用企業統一部署在數據中心的達夢DM8數據庫集群。
1.2 系統功能分析
網上報銷系統實現出差申請、審核審批、預訂行程、免票出行、費用報銷、月結支付全生態周期管控,總體功能架構如圖1所示。
系統達到了費用成本控制的目的,實現了“免墊付、免發票、易報銷”的一站式消費報銷流程。采用光學字符識別(OCR) 技術,通過拍照、掃描等光學輸入方式,能夠自動識別、錄入、存儲發票信息于企業發票信息庫中,并將待驗證的發票上傳至稅務系統查驗發票真偽,從而減少了人工參與和手工錄入的差錯。系統還實現了對個人或特定群體的差旅行為分析、財務分析,可輔助企業決策,以及對各部門(單位)差旅消費情況的分析,有助于指導次年編制年度差旅預算,并可有針對性地制定降低成本措施。
1.3 系統技術架構分析
系統總體架構說明如圖2所示。
網上報銷系統采用微服務架構,系統架構采用了Spring Cloud微服務,前端采用了MVVM架構設計模式,后端采用了SpringBoot技術體系。以基礎和核算服務為支撐,對外通過網關以HTTPS協議暴露接口。系統建設了商旅業務應用,包括商旅出行申請、商旅預定、行程管理、費用報銷、商旅訂單對公月結、財務核算、商旅主題分析等模塊。此外,系統支持移動端和PC端多平臺使用,并集成了文件管理系統、稅務系統、財務系統、綜合信息門戶、人力資源系統以及iOCR服務。
系統通過自主可控調研,在硬件環境和軟件環境方面都產生了較大的改變。具體內容如表1所示。
在硬件環境方面,評估系統所需的硬件資源(如服務器、存儲設備、網絡設備等)與現在硬件環境的兼容性方面,東方通的產品可以與多種硬件平臺無縫集成,支持多種處理器架構和外設。這些優勢可以使得東方通能夠在各種硬件環境下穩定運行,為用戶提供可靠、高效的解決方案。
在軟件環境方面,中間件和支撐軟件近年來國產中間件也取得了顯著的突破和發展。提供了豐富的功能和特性以滿足不同用戶的需求。在具體的技術實現和性能方面,國產中間件更注重性價比和易用性。數據庫由Oracle數據庫替換為達夢數據庫,雖然達夢數據庫與Oracle數據庫之間的兼容性較高,但存在特有的字段類型和函數。在遷移之前,須提前優化SQL語句及調整字段類型以滿足達夢數據庫的要求。
2 系統改造步驟
改造步驟主要包括功能改造、服務器部署、中間件替換、數據庫遷移、外部接口集成、系統測試及上線切換等工作。
2.1 功能改造
基于平臺整合業務完成的補丁包,全部進行自主可控適配,包括應用代碼層面及數據庫層面,適配完成后在相關系統原版本基礎上進行更新。
2.1.1 功能代碼調整
對代碼中的實體部分SQL語法差異進行修正,主要是引用東方通TongWeb、達夢8數據庫的相關依賴,將本地包替換為官方包,并對業務程序的實體文件進行同步調整。
2.1.2 報表適配調整
由于報表本身支持自主可控改造,只須引入國產數據庫Jar包至配置庫中,并修改數據庫配置文件,相關代碼調整為適配國產數據庫路徑。完成后對報表工程文件進行單獨適配,集中替換支持國產數據庫的SQL語法,不支持的函數、存儲過程等內容則單獨優化、修改寫法,保證報表性能一致。
2.2 服務器部署
部署內容包括麒麟操作系統、TongWeb中間件、達夢數據庫等,其中數據庫、中間件為壓縮包,需要先進行解壓,然后通過命令行執行相關SH文件,并測試是否安裝成功。
2.3 中間件替換
國產中間件技術水平也較為成熟,通過屏蔽硬件、操作系統、網絡和數據庫,能夠高效地實現客戶機與應用層之間通信[2]。根據評估結果,選擇一個更加安全可靠的中間件來替代原有的中間件。
中間件替換步驟如下:
1) 評估和選擇中間件:通過對已有中間件的功能、性能、安全性等方面進行評估,確定需要替換的中間件。在選擇替代中間件時,須考慮其與現有系統的兼容性和穩定性。
2) 配置更新:在將新的中間件引入系統中之前,需要將原有系統中的數據遷移到新的中間件中。這一過程需要保證數據的完整性和準確性,并確保遷移過程的安全。
2.4 數據庫遷移
數據庫使用容器云平臺部署。容器云平臺運用容器、微服務等技術,基于自主可控服務器,統一管理底層計算資源,按需開設多個應用容器,提供輕量化的應用軟件運行虛擬環境,實現硬件資源虛擬化、綜合使用和容器的按需擴展、負載均衡能力,提高系統運行效率和可靠性[3]。
數據庫遷移步驟如下:
1) 進行數據轉移和遷移。在遷移過程中,確保數據的完整性和一致性。為了確保數據的準確性,應使用專業的數據遷移工具,例如達夢數據庫遷移工具DTS。
2) 在遷移過程中,需要確保系統能夠正常運行,并且對外部用戶的影響要盡量降到最低。可以采用漸進遷移的方式,將數據分批次遷移,以減少系統的停機時間和用戶的影響。
3) 進行數據遷移后的驗證和測試。在完成數據庫遷移后,需要對新的數據庫進行驗證和測試。
2.5 外部接口集成
通過與其他相關系統進行接口集成,實現數據的共享和交互,為用戶提供更便捷、高效的報銷服務。根據企業的需求和現有系統的架構,確定需要集成的外部接口,并定義其數據格式、通信方式以及安全要求。在進行接口定義和規范制定時,需要考慮到系統的可拓展性和兼容性,確保接口的穩定和可靠性。外部接口集成涉及多個系統和模塊之間的數據流動和通信,存在著一定的風險和挑戰。為了確保集成的順利進行,需要進行系統和接口的監控和管理,使系統能夠對接口進行配置和調度,根據實際情況進行接口的啟用和禁用,提高系統的運行效率和靈活性。
2.6 系統測試
在系統測試階段,需要明確測試的目標和范圍,制定相應的測試計劃和用例。測試計劃包括測試的時間、地點、人員和資源等安排,而測試用例則定義了每個功能模塊的測試步驟和預期結果。在功能測試方面,將對系統的各項功能進行逐一測試。例如,對于報銷申請功能,將驗證用戶能夠正確填寫報銷信息、上傳附件,并能夠提交申請。
除了功能測試,系統測試還包括性能測試和安全測試。性能測試是為了驗證系統在壓力情況下的性能表現,例如,多用戶同時訪問系統時系統的響應時間和負載能力。安全測試則是驗證安裝在系統內的保護機制能否在實際應用中對系統進行保護,使之不被非法入侵,不受各種因素的干擾。例如,使用性能測試工具來模擬多用戶同時訪問系統的場景,并監測系統的性能指標;使用自動化測試工具來執行大量重復性的測試用例,提高測試效率。
2.7 上線切換
系統完成適配后,根據系統的差異點輸出上線切換方案,并按照以下運營規則投運:
1) 第一階段作為應急備用環境投入使用,待正式環境發生故障時直接切換,可以支持大部分業務場景正常使用。
2) 第二階段作為生產環境投入使用,可以支持所有業務場景正常使用,性能與原生產環境版本無明顯差距,做到所有業務功能與原生產環境版本對齊,做到切換后用戶無感知。
3 系統應用改進分析
在系統自主可控環境改造過程中,從系統性能和系統安全角度進行改進分析。
3.1 系統性能提升
3.1.1 擴大堆內存提升加載速度
中間件運行依賴Java虛擬機(Java Virtual Machine,JVM) ,當JVM堆內存使用達到一定程度,由JVM提供的垃圾回收線程將啟動執行清理操作,該操作主要用于清理緩存中不再使用的Java對象,避免內存溢出[4]。經分析,JVM的默認內存過小,最大值僅為256M,Java進程98%的時間在進行垃圾回收,導致服務資源過少,時常宕機。因此,對JVM進行設置,最大內存擴至2 048M,可解決加載問題,提高性能。
3.1.2 優化SQL加快查詢速度
針對查詢語句進行優化。優化時,應盡量避免全表掃描,首先應考慮在Where及Order by涉及的列上建立索引。當然,索引并不是越多越好,索引固然可以提高相應的Select的效率,但同時也降低了Insert及Update的效率,一個表的索引數最好不要超過6個,若太多則應考慮一些不常使用到的列上建的索引是否有必要。
3.1.3 定期硬件維護防止服務器宕機
服務器硬件設備對于服務器的性能和穩定性是至關重要的,因此定期維護是必不可少的。定期維護是指每隔一段時間對服務器的內存、硬盤、電源、風扇等硬件設備的檢查和維護,確保它們的工作正常,不會因為硬件故障導致服務器宕機。
3.2 系統安全提升
3.2.1 IPv4/IPv6雙棧穩固內網安全
設備能夠同時支持IPv4和IPv6兩種協議,它們既可以與只支持IPv4的其他節點通信,也可以與只支持IPv6的其他節點通信。這有助于保證網絡的連續性和服務的穩定性,直到所有服務器遷移至IPv6網段。
3.2.2 安裝G01防止外部入侵
政府網站綜合防護系統,簡稱“網防G01”,是首款專門針對政府網站及服務器等關鍵信息基礎資源進行綜合防護的產品,可對服務器進行安全防護[5]。服務器安裝該軟件后,可對操作系統、Web中間件和Web業務系統和網站進行多重防護,持續對應用服務器上的流量與行為進行監控。同時可以管理被防護服務器,進行防護策略配置、安全巡檢、防護目標管理、攻擊監測日志查看、系統資源監控等操作。
4 總結
通過對現有系統的現狀進行評估,提出了系統自主可控改造的步驟方法,并對每個步驟進行了闡述。在改造過程中,重點關注了系統性能和安全性的提升。通過實踐發現,改造后的系統在處理報銷事務時更加高效,能夠大大減少處理時間并提升用戶體驗。該方法為企業提供了一個可行的信息系統自主可控改造解決方案。未來的研究可以進一步完善系統的功能和性能,并探索更多的措施來進一步提升系統的性能與安全。
參考文獻:
[1] 萬俊偉,趙輝,鮑忠貴,等.自主可控信息技術發展現狀與應用分析[J].飛行器測控學報,2015,34(4):318-324.
[2] 李敏,夏紅霞,趙順東.中間件技術及其發展趨勢[J].軟件導刊,2007,6(3):3-5.
[3] 袁忠良.容器云計算平臺關鍵技術研究[D].南京:南京大學,2017:34-35.
[4] 孫文俊,黨玲,李祥.基于自主可控平臺的信息系統性能優化研究[J].現代計算機,2023,29(4):75-79.
[5] “網防G01”打造政府網站的堅固堡壘:政府網站綜合防護系統技術研究與實戰應用[J].警察技術,2017(2):3.
【通聯編輯:謝媛媛】