摘" 要:隨著信息科技的發(fā)展及在國民生產(chǎn)生活中的廣泛應(yīng)用,芯片短缺、授權(quán)禁用、遠程威脅等一系列信息安全問題頻發(fā),利用信創(chuàng)技術(shù)解決“卡脖子”難題是當(dāng)前信息技術(shù)的研究方向。基于信創(chuàng)架構(gòu),使用uni-app與openGauss改造一款能隨時隨地進行訂餐、批量操作的訂餐系統(tǒng)。該系統(tǒng)集成于企業(yè)微信中,使用企業(yè)微信接口進行統(tǒng)一身份認(rèn)證,工作臺即可直接進入訂餐界面。實驗結(jié)果表明,該系統(tǒng)改造后運行穩(wěn)定,能夠很好地適配iOS、Android、鴻蒙、Windows等主流平臺,為應(yīng)用系統(tǒng)進行信創(chuàng)改造提供了一定的借鑒。
關(guān)鍵詞:信創(chuàng);uni-app;openGauss;企業(yè)微信;openEuler
中圖分類號:TP309" 文獻標(biāo)識碼:A" 文章編號:2096-4706(2025)04-0093-05
Exploration of Information Technology Application Innovation Transformation in Campus Meal Ordering System Based on uni-app and openGauss
WANG Yongjun, ZHENG Fei, Jiang Yujun
(Foshan Open University, Foshan" 528000, China)
Abstract: With the development of information technology and its wide application in national production and daily life, a series of information security problems, such as chip shortage, authorization ban, and remote threats occur frequently. Using information technology application innovation technology to solve the “bottleneck” problem is the current research direction of information technology. The ordering system that can order meals and perform batch operations anytime and anywhere is transformed using uni-app and openGauss based on information technology application innovation architecture. The system is integrated into the enterprise WeChat, using the enterprise WeChat interface for unified identity authentication. The order interface can be directly accessed through the workbench. The experimental results show that the system runs stably after the transformation, and can be well adapted to mainstream platforms such as iOS, Android, HarmonyOS, and Windows, which provides a certain reference for the application system to carry out information technology application innovation transformation.
Keywords: information technology application innovation; uni-app; openGauss; enterprise WeChat; openEuler
0" 引" 言
由于國內(nèi)信創(chuàng)技術(shù)發(fā)展迅猛,很多應(yīng)用系統(tǒng)有必要進行信創(chuàng)技術(shù)改造,以適應(yīng)各種架構(gòu)和平臺。而在信創(chuàng)改造過程中,鑒于設(shè)備的多樣化,硬件架構(gòu)、屏幕尺寸、操作系統(tǒng)及底層中間件等的不同制約了各種應(yīng)用程序的兼容性,也就增加了項目開發(fā)的成本并延長了適配的周期。筆者所在學(xué)校訂餐的系統(tǒng)服務(wù)器,使用基于X86平臺的Windows Server,功能單一,信息安全問題頻發(fā)。而且用戶需要通過電腦瀏覽器進行訪問,經(jīng)常會出現(xiàn)漏訂,同時補訂需要通過電腦操作。不友好的操作模式使得職工感覺不便利,也大大降低了學(xué)校的配餐效率,進而影響職工的正常就餐。因此,探索利用信創(chuàng)技術(shù)改造訂餐系統(tǒng)的需求應(yīng)運而生。
信創(chuàng)改造涉及軟件、硬件等多個層面。軟件改造使用的開發(fā)平臺眾多,目前國外主流移動開發(fā)平臺分別是Flutter[1]、React Native、Cordova、Ionic、Xamarin,國內(nèi)主要有uni-app[2]、Taro、Mui[3]等。信息系統(tǒng)后端數(shù)據(jù)庫工具也有很多,國外如Oracl、MySQL、SQL Server等,國內(nèi)如openGauss、OceanBase、TDSQL、PolarDB等。硬件改造主要系統(tǒng)運行環(huán)境由X86架構(gòu)的CPU等適配到鯤鵬架構(gòu)、ARM架構(gòu)、RISC-V架構(gòu)或其他混合架構(gòu)的CPU。
本文利用信創(chuàng)技術(shù),將該傳統(tǒng)BS架構(gòu)應(yīng)用系統(tǒng)進行改造、適配,滿足學(xué)校的日常工作需求。通過uni-app框架設(shè)計前端UI,openGauss[4]進行后端的數(shù)據(jù)持久化,實現(xiàn)了一款跨平臺校內(nèi)訂餐系統(tǒng)。該系統(tǒng)以企業(yè)微信的用戶體系為基礎(chǔ),構(gòu)建各種功能模塊,包括教師、學(xué)生、班級、機構(gòu)群的統(tǒng)一認(rèn)證入口,學(xué)校通知公告的及時觸達,校務(wù)行政審批電子化,OA流程集成處理,校內(nèi)訂餐自建開發(fā),學(xué)校統(tǒng)一通信錄的建立等。
1" 相關(guān)技術(shù)介紹
1.1" 信創(chuàng)改造
信創(chuàng)是“信息技術(shù)的應(yīng)用創(chuàng)新產(chǎn)業(yè)”的簡稱,從軟硬件自主可控、國產(chǎn)化替代的角度來解決信息安全問題,利用安全可靠關(guān)鍵系統(tǒng)、關(guān)鍵應(yīng)用及關(guān)鍵軟硬件產(chǎn)品的研發(fā)集成能力來實現(xiàn)對部分辦公場景及信息系統(tǒng)改造和適配。
1.2" uni-app框架
uni-app是基于Vue.js標(biāo)準(zhǔn)的前端框架。Vue.js是一個用于構(gòu)建用戶界面的JavaScript框架,建立在標(biāo)準(zhǔn)HTML、CSS和JavaScript之上,并提供基于組件的聲明性編程模型,主要用于高效開發(fā)跨平臺的用戶界面。uni-app基于Apache-2.0授權(quán)模式,開發(fā)者僅需編寫一套代碼,即可發(fā)布到iOS、Android、Web(響應(yīng)式),以及多種小程序平臺(微信/支付寶/百度/頭條/飛書/QQ/快手/釘釘/淘寶)、快應(yīng)用等多個平臺。
1.3" OpenGauss庫
openGauss[5]是一款基于木蘭寬松許可證授權(quán)的國產(chǎn)開源關(guān)系數(shù)據(jù)庫,目前支持操作系統(tǒng)有openEuler[6]、麒麟V10、Asianux以及CentOS,對DDL、DML、DCL和DQL四種不同類型的SQL語句有良好的支持。它主要通過Data Studio 圖形化管理工具來管理與展示,可以更簡單直觀地進行數(shù)據(jù)庫的開發(fā)以及應(yīng)用構(gòu)建任務(wù)。
2" 系統(tǒng)設(shè)計及實現(xiàn)
2.1" 系統(tǒng)架構(gòu)
學(xué)校信息化環(huán)境復(fù)雜,系統(tǒng)眾多。硬件環(huán)境包括高性能路由器、防火墻、WAF、安全審計、交換機和服務(wù)器等設(shè)備50多臺套,聯(lián)網(wǎng)計算機1 000余臺,基本符合等保3級標(biāo)準(zhǔn)的網(wǎng)絡(luò)機房和覆蓋全校的千兆高速光纖網(wǎng)絡(luò)。軟件系統(tǒng)涵蓋校園官網(wǎng)、學(xué)歷支持系統(tǒng)、OA、訂餐系統(tǒng)、人事系統(tǒng)等。在推進學(xué)校信創(chuàng)工作中,作者選取校內(nèi)訂餐系統(tǒng)進行適配改造探索。整體適配涉及運行環(huán)境多個層面,包括服務(wù)器硬件(CPU芯片、服務(wù)器等)、服務(wù)器軟件(數(shù)據(jù)庫、操作系統(tǒng)、中間件)、應(yīng)用軟件(訂餐系統(tǒng))、信息安全(終端安全)等。前期改造主要聚焦于前端開發(fā)框架、后臺數(shù)據(jù)庫、服務(wù)器操作系統(tǒng)三大模塊。其改造線路如圖1所示。
其中,信息安全改造通過選用符合信創(chuàng)要求的硬件產(chǎn)品,取代和替換不合規(guī)的設(shè)備。搭建符合信息系統(tǒng)安全等級保護標(biāo)準(zhǔn)機房物理環(huán)境,配備IPS(入侵檢測系統(tǒng))、防火墻、堡壘機、準(zhǔn)入設(shè)備、應(yīng)用防火墻WAF、上網(wǎng)行為管理、數(shù)據(jù)庫日志、日志審計一系列安全設(shè)備以及商用密碼模塊,對整個信創(chuàng)環(huán)境進行安全加固。服務(wù)器改造通過更新服務(wù)器硬件設(shè)備及運行在上面的操作系統(tǒng)、中間件、數(shù)據(jù)庫、應(yīng)用系統(tǒng)軟件等,解決相關(guān)運行環(huán)境的兼容性問題,將圖中標(biāo)識的Windows Server和MySQL模塊遷移為openEuler和openGauss模塊。系統(tǒng)應(yīng)用改造通過更新開發(fā)框架,引用的庫文件、中間件等,進行代碼重構(gòu),并解決兼容性問題。作為改造探索,本文主要研究如何適配改造服務(wù)器軟件模塊和應(yīng)用軟件模塊,圖中綠色標(biāo)識模塊的國產(chǎn)化替代。
2.2" 系統(tǒng)實現(xiàn)
2.2.1" 服務(wù)器操作系統(tǒng)改造
操作系統(tǒng)改造主要是將服務(wù)器運行環(huán)境從原Windows Server遷移到國產(chǎn)軟硬件環(huán)境下。目前市面上商業(yè)化的國產(chǎn)或開源的操作系統(tǒng)主要包括麒麟kylin,歐拉openEuler,統(tǒng)信UOS以及CentOS等。各個操作系統(tǒng)對不同硬件的兼容性基本成熟,本項目使用openEuler和深度桌面環(huán)境DDE。openEuler已經(jīng)原生支持openGauss。在探索階段,筆者通過虛擬機軟件VMware Workstation Pro加載openEuler鏡像包,搭建開發(fā)環(huán)境。系統(tǒng)運行界面如圖2所示。
2.2.2" 服務(wù)器數(shù)據(jù)庫適配改造
數(shù)據(jù)庫適配改造主要是將原MySQL數(shù)據(jù)庫替換為openGauss。MySQL和openGauss均為關(guān)系型數(shù)據(jù)庫,創(chuàng)建數(shù)據(jù)庫和使用基本相同,大體結(jié)構(gòu)、基本數(shù)據(jù)類型、表操作和函數(shù)重合點很高,但是存儲過程方面基本上需要全部仔細修改。改造遷移主要涉及數(shù)據(jù)庫的Metadata、Data、PL/SQL以及訂餐應(yīng)用。MetaData主要涉及對象定義的轉(zhuǎn)換,如建表語句、字段類型的轉(zhuǎn)換、數(shù)據(jù)精度問題;Data主要包括業(yè)務(wù)數(shù)據(jù)遷移,增量數(shù)據(jù)同步,數(shù)據(jù)完整性檢查;PL/SQL主要涉及函數(shù)替換,存儲過程改造,自定義函數(shù)創(chuàng)建;訂餐應(yīng)用包括程序兼容性測試和程序中SQL語句調(diào)整。在本次數(shù)據(jù)庫遷移過程中,使用一款國產(chǎn)數(shù)據(jù)庫遷移工具exBase進行數(shù)據(jù)庫自動轉(zhuǎn)換遷移,該工具工作架構(gòu)如圖3所示。
exBase安裝在openEuler操作系統(tǒng)上,通過瀏覽器訪問exBase系統(tǒng),完成數(shù)據(jù)庫遷移評估、應(yīng)用遷移評估、自動采集、數(shù)據(jù)庫結(jié)構(gòu)遷移、數(shù)據(jù)遷移及遷移后數(shù)據(jù)校驗。
2.2.3" 應(yīng)用軟件改造
校內(nèi)通用信息系統(tǒng)通常采用B/S架構(gòu),原訂餐系統(tǒng)是運行在Windows Server平臺,基于ASP.NET和MySQL實現(xiàn),開發(fā)時主要使用的IDE工具為Visual Studio;而實現(xiàn)遷移后,是運行在openEuler平臺,基于PHP和openGauss實現(xiàn),開發(fā)時主要使用的IDE工具為HBuilderX。通過HBuilderX開發(fā)工具的使用,脫離了ASP.NET架構(gòu),該點餐系統(tǒng)的體積大幅度減小,能夠進行快速的迭代開發(fā)調(diào)試。同時,通過小巧高能的富有原生UI控件樣式的uni-app框架的使用,封裝多Webview、啟動原生動畫,點餐應(yīng)用在iOS、Android系統(tǒng)上面顯示十分協(xié)調(diào)統(tǒng)一,很好地解決了應(yīng)用系統(tǒng)在各個移動平臺上的兼容顯示。圖4為uni-app開發(fā)界面圖。
2.2.4" 企業(yè)微信集成實現(xiàn)
通過uni-app框架,改造后的系統(tǒng)支持跨移動平臺運行,提供原生樣式顯示的同時還可以很好轉(zhuǎn)換成APP、小程序、H5頁面,有效解決iOS、Android、鴻蒙等主流移動平臺對H5標(biāo)簽的支持和解釋差異。另外,點餐系統(tǒng)以企業(yè)微信的用戶體系為基礎(chǔ),通過調(diào)用企業(yè)微信用戶登錄接口實現(xiàn)類似CAS的單點登錄,用戶進入訂餐應(yīng)用[7-8]不再需要進行二次認(rèn)證。圖5為訂餐系統(tǒng)企業(yè)微信集成界面圖。
3" 實驗測試及分析
本項目主要探索應(yīng)用系統(tǒng)的信創(chuàng)改造,改造后對系統(tǒng)進行功能和性能測試。測試方法主要包括白盒黑盒測試、回歸性測試[9]及壓力測試,性能測試工具采用LoadRunner[10],以驗證系統(tǒng)能否在各終端平臺上穩(wěn)定運行。測試的環(huán)境內(nèi)容如表1所示。
功能測試主要通過表1所示移動終端進行各個功能模塊如單點登錄、日期選擇、訂餐份數(shù)、批量取消、批量訂餐等功能進行場景測試。測試部分截圖如圖6所示。性能測試主要通過LoadRunner的管理平臺調(diào)用測試腳本,腳本運行時采用逐步加壓和瞬間加壓兩種客戶端連接方式進行,測試過程中查看服務(wù)器端在客戶端的連接數(shù)量變化過程中對應(yīng)的資源使用變化,并跟蹤記錄服務(wù)器端的運行情況和返回給客戶端的運行結(jié)果。本次測試服務(wù)器資源利用情況如圖7所示。曲線1表示服務(wù)器硬盤的使用情況;曲線2表示內(nèi)存的使用情況,整個測試過程內(nèi)存的使用都保持在25%~30%之間;曲線3表示的是服務(wù)器CPU總的利用情況,從圖中可以看出本次測試服務(wù)器CPU利用率是隨著用戶并發(fā)量的增加而增加的,到8分鐘時服務(wù)器并發(fā)數(shù)量達到200個的高峰,此時服務(wù)器CPU使用率接近40%,13分鐘后,隨著并發(fā)用戶減少CPU使用率逐漸下降,總體CPU平均使用率為22.061%,最高達到44.3%;曲線4表示是的服務(wù)器其中一個CPU內(nèi)核的使用情況。
經(jīng)功能和性能測試,目前系統(tǒng)在上述3個平臺基本運行正常。
4" 結(jié)" 論
作為校園信息系統(tǒng)信創(chuàng)改造的初步探索,本文搭建了信息系統(tǒng)服務(wù)器端的軟硬件環(huán)境,將操作系統(tǒng)和數(shù)據(jù)庫進行信創(chuàng)化適配,并引入國產(chǎn)移動開發(fā)框架實現(xiàn)訂餐應(yīng)用,有效解決了運行環(huán)境和開發(fā)環(huán)境中一系列兼容性問題,這一實踐為全面深度的優(yōu)化改造提供了可供借鑒的驗證。由于信創(chuàng)產(chǎn)業(yè)近幾年才得到廣泛實施和應(yīng)用,業(yè)界各種軟和硬件技術(shù)還在不斷研究和完善中,后續(xù)作者將對客戶端適配性和性能做進一步的改造探索。
參考文獻:
[1] 薄文彥,王秀慧,趙倩倩.基于Flutter的“文旅大同”APP設(shè)計與開發(fā) [J].山西大同大學(xué)學(xué)報:自然科學(xué)版,2023,39(4):45-48.
[2] 高霞.基于uni-app+Express的親子系統(tǒng)的設(shè)計與實現(xiàn) [J].電腦與信息技術(shù),2023,31(2):49-52+58.
[3] 王秀慧.基于MUI的課堂助手App設(shè)計與應(yīng)用 [J].中國教育信息化,2021(24):92-96.
[4] 陳現(xiàn)森,徐辰.基于openGauss 的異構(gòu)算子加速技術(shù) [J].華東師范大學(xué)學(xué)報:自然科學(xué)版,2023(5):90-99.
[5] ZHOU X H,JIN L Y. DBMind: A Self-Driving Platform in OpenGauss [J].Proceedings of the VLDB Endowment,2021,14(12):2743-2746.
[6] ZHOU M H,HU X W,XIONG W. OpenEuler: Advancing a Hardware and Software Application Ecosystem [J].IEEE Software,2022,39(2):101-105.
[7] 馬勇喆.基于Android平臺的高校訂餐軟件設(shè)計與實現(xiàn) [J].信息技術(shù),2016(3):170-174.
[8] 高俊杰,孫鵬霞,劉義漢,等.基于SSM的網(wǎng)上訂餐管理系統(tǒng) [J].軟件,2024,45(1):168-173.
[9] 趙逸凡,郝丹.一種基于強化學(xué)習(xí)的持續(xù)集成環(huán)境中測試用例排序技術(shù) [J].軟件學(xué)報,2023,34(6):2708-2726.
[10] 趙瑜,吳承榮,嚴(yán)明.基于LoadRunner的定制化業(yè)務(wù)背景流量生成系統(tǒng) [J].計算機工程,2020,46(10):231-239+247.
作者簡介:王勇軍(1982—),男,漢族,廣東廣州人,講師,碩士,研究方向:網(wǎng)絡(luò)通信、嵌入式系統(tǒng);鄭飛(1965—),男,漢族,廣東佛山人,教授,博士,研究方向:計算機、人工智能。
收稿日期:2024-08-27
基金項目:2023年佛山市自籌經(jīng)費類科技創(chuàng)新項目(32000100632);2019年年度廣東開放大學(xué)(廣東遠程開放教育科研基金)項目(YJ1913)