徐小華,胡忠旭,常 鳳
(昭通學院網絡信息中心,昭通 657000)
隨著《教育信息化中長期規劃(2021—2035)》《教育信息化“十四五”》[1]等相關文件的出臺與實施,教育信息化必將帶動教育理念的創新和教學管理模式的變革,各高校都熱衷于將信息化手段用于各項管理中,所以,“數智學工”也成為“數智”校園的重要管理信息系統之一。
目前,對學工的系統架構,相關的學者和工程師開發了多種方法。如李宏志等[2]設計了基于BUI和SSH框架的學工系統;湯義和[3]設計了基于.NET技術的學工信息管理系統;董萍[4]提出了基于SSH框架的學工管理系統。上述架構大多采用單體式或SOA架構,單體架構或SOA架構可以快速滿足業務的簡單訴求,然而隨著項目規模的擴大、業務模塊的耦合,導致單體架構冗余而數量龐大的代碼越來越無法適應學工系統靈活應對變化的需求。主要表現在以下幾個方面:
(1)以業務劃分,數據難共享和復用
傳統模式下大部分學工系統以業務劃分為依據,而且都按一定的權限管理著各階段學生信息。各自為陣、各司其職的現象比較普遍,沒有設置明確的部門來實現學生信息管理的系統化,以至學生數據管理混亂、分散、資源浪費,最終導致基礎數據失真,結果數據難以復用,過程數據失去意義。
(2)靈活性不足,功能調整響應慢
因國家政策和學校制度的修改,導致學工的功能經常需要進行調整,而在傳統模式下的學工系統靈活性不足,功能的調整工作量非常大,成本非常高。
(3)互動性不足,不能服務學生
傳統模式下大部分學工系統大多立足于管理,很少面向學生服務和考慮到學生的需求。
鑒于此,面對傳統學工系統的多種問題和系統框架問題,本文提出了一種基于微服務架構的“數智學工”管理系統,它把“應用建設”轉向“服務建設”,學生和高校已經呈現雙向選擇之態。以學生為視角,基于學生從進校到離校全過程服務的理念,涵蓋招生管理、迎新管理、學生日常行為管理、學生公寓管理等主要內容,系統有效地整合各類學生事務,為學生提供符合實際的業務訪問通道和事務辦理通道,最大限度地滿足學生管理工作需要。
微服務(MicroService)架構是指,將系統的業務功能劃分為極小的獨立微服務,每個微服務只關注于完成某個小的任務[5]。系統中的單個微服務可以獨立地部署和擴展,各個微服務之間是高內聚、松耦合的。服務與服務之間采用輕量級的通信協議,相互協調、相互配合。它在應對需求的變化、容錯處理、服務復用及擴展、提升開發效率方面等有明顯的優勢。
容器化技術(container)重新定義了應用程序在不同環境中的移植和運行形式。應用系統采用容器技術和微服務架構相結合使得系統開發變得更為簡單、維護更為方便。Docker是目前最為流行的容器平臺,幾乎沒有性能開銷,可以很容易地在機器和數據中心中運行。最重要的是,它們不依賴于任何語言、框架包括系統[6]。圖1為架構全景圖。

圖1 架構全景圖
基于微服務架構的“數智學工”系統,結合了軟件架構的三層設計和微服務的架構進行搭建。系統選用最為基礎的,主流的開源軟件環境,在云計算的框架下,結合容器技術進行設計。首先,按照微服務界限上下文的拆分原則,確定服務之間的交互共享模型和行為接口,將系統拆分為一些小的微服務,如學生的招生管理微服務,就業管理微服務等。并把這些服務放在系統的業務層,使用eureka集群方式部署。用戶使用不同的終端訪問前端界面,并向后臺發送相關的訪問請求,這些請求使用Nginx為負載均衡,所有請求通過api網關zuul組件訪問內部服務,該組件提供流量控制、身份鑒別、負載均衡等安全防護功能。網關請求后,消費者從注冊中心得到服務提供者的注冊信息列表,注冊中心采用eureka集群方式部署。為避免訪問集中,客戶端使用負載均衡組件ribbon,客戶得到具體的地址信息后,通過聲明式組件feign,將遠程restful調用封裝成接口調用。為避免某個服務宕機后引起服務雪崩,以及服務失敗后快速響應,采用服務熔斷組件和階級機制hystrix,其中turbine可以監控服務間的調用和相關指標。引入spring cloud bus組件,提供統一的配置信息管理。最后在數據訪問層中,使用orcal集群,采用Redis緩存技術提高數據處理能力。系統結構如圖2所示。

圖2 系統結構
基于微服務的“數智學工”系統有三類用戶群體,學生群體記錄學生在校期間的表現,主要功能有請假、資助申請、學生綜合表現等;學生管理群體提供對學生在校期間的學生管理一條線的管理工作、運行維護等,主要功能有信息維護、迎新管理、公寓管理、繳費管理、學生綜合測評等;系統管理員群體負責對系統進行維護。整個“數智學工”涵蓋了學生從入學到畢業的所有學生管理工作。包括了招生管理、迎新管理、學生資助、心理咨詢、就業管理、離校管理等主要服務。系統以“移動優先、多端融合;成長引導、智慧決策”為設計理念,其系統功能架構如圖3所示。

圖3 系統功能架構
基于微服務的“數智學工”系統的環境,以學生為中心的業務場景服務,從學校進行招生開始的招生服務,到迎新服務、公寓管理。到學生入校后的資助模塊、請假等日常管理服務,直到學生畢業離校就業的離校服務、就業服務,實現全生命周期、全業務場景的學生工作管理。
操作系統采用開源的CentOS 7.6為運行環境,容器調度使用KUbernets。面向學生處、院系教職人員、學生學業導師和全體學生,從業務處理流程的整合角度出發,整合各系統中與學生相關的信息。對學校學生相關數據資產進行全面摸底,對學生數據從生產、存儲、流動到使用的全過程進行調研,識別出學工業務內部、業務之間的業務流程和數據應用關系,梳理繪制各科室及相關部門業務邊界,明確各業務運轉及數據需求。構建業務流程的線上辦理中心。系統由基礎支撐服務(學生信息管理服務、學工隊伍管理服務、資格鑒定服務、流程服務、表單服務)來構建基礎支撐平臺:學生信息管理服務用于學生綜合數據的管理;學工隊伍服務圍繞對教職工數據管理,部門、專業、班級數據管理,職務及數據權限管理;流程服務、表單服務用于學生事務辦理表單填寫及流程構建的支撐;資格鑒定服務用于對各類業務辦理規則的限定。
以學生為中心的各類業務場景服務實現前端應用;通過H5構建的移動學工服務實現移動端應用。通過與大數據中心對接,實現校內數據標準的統一,數據的互聯互通。
基于微服務的“數智學工”系統采用輕架構、系統重構的設計理念,堅持管理與服務、管理與技術分離的原則,滿足了不同使用對象的需求。在安全性、兼容性、穩定性、擴展性、靈活性方面滿足了學生工作管理業務。“數智學工”實現了“以服務于人”為導向,系統圍繞“學生成長”形成了服務閉環,是一個學生能力成長融合管理服務系統。并對學生進行科學化、網絡化的管理,已成為高校學生信息管理的發展趨勢。