李 川, 吳 鋼, 利潤霖
(國網(wǎng)信息通信產(chǎn)業(yè)集團(tuán)有限公司, 北京 100052)
后勤保障服務(wù)水平是企業(yè)后勤工作的有機(jī)組成部分, 在保障企業(yè)核心業(yè)務(wù)正常開展、改善員工生產(chǎn)生活條件、展示企業(yè)良好社會(huì)形象等方面發(fā)揮重要作用.隨著企業(yè)發(fā)展方式轉(zhuǎn)變, 后勤服務(wù)領(lǐng)域越來越寬, 工作標(biāo)準(zhǔn)越來越高, 保障作用越來越重要, 對深入推進(jìn)后勤保障服務(wù)標(biāo)準(zhǔn)化、專業(yè)化、精益化管理提出新的更高要求[1].
新技術(shù)的發(fā)展為提高后勤保障服務(wù)水平提供了有力支撐, 加速新興業(yè)態(tài)發(fā)展壯大, 同時(shí)也為傳統(tǒng)的服務(wù)型企業(yè)提升保障能力、改善服務(wù)品質(zhì)、增強(qiáng)客戶體驗(yàn)提供了技術(shù)支撐. 目前企業(yè)后勤業(yè)務(wù)涉及出入管理、車輛管理、餐飲管理等多個(gè)業(yè)務(wù)領(lǐng)域, 各業(yè)務(wù)領(lǐng)域傳統(tǒng)單體式應(yīng)用系統(tǒng)在單位廣泛分布、數(shù)量眾多、獨(dú)立運(yùn)行, 數(shù)據(jù)孤島嚴(yán)重, 影響了跨業(yè)務(wù)應(yīng)用、跨單位應(yīng)用業(yè)務(wù)的有效開展, 制約后勤統(tǒng)一運(yùn)管及保障能力提升.本文基于微服務(wù)的實(shí)現(xiàn)技術(shù)Spring Cloud 開發(fā)企業(yè)級智慧后勤保障平臺, 打破企業(yè)各類單體式后勤業(yè)務(wù)應(yīng)用系統(tǒng)間壁壘, 實(shí)現(xiàn)各類后勤業(yè)務(wù)應(yīng)用系統(tǒng)數(shù)據(jù)貫通,為企業(yè)提供統(tǒng)一平臺、統(tǒng)一入口、統(tǒng)一管理、統(tǒng)一展現(xiàn)的立體后勤服務(wù)新模式, 助力提升后勤管理、保障、服務(wù)的多元化支撐能力.
系統(tǒng)基于微服務(wù)架構(gòu), 以分層的方式進(jìn)行系統(tǒng)的設(shè)計(jì)[2,3]. 系統(tǒng)架構(gòu)共分為支撐層、數(shù)據(jù)層、服務(wù)層、應(yīng)用層、客戶端, 如圖1 所示. 支撐層封裝平臺公共邏輯組件, 提供標(biāo)準(zhǔn)JSON 格式服務(wù)接口, 包括消息組件、緩存組件、短信組件等; 數(shù)據(jù)層負(fù)責(zé)保存后臺關(guān)鍵業(yè)務(wù)數(shù)據(jù)和數(shù)據(jù)持久化, 數(shù)據(jù)庫按業(yè)務(wù)垂直拆分, 不同業(yè)務(wù)模塊的數(shù)據(jù)存儲到不同的數(shù)據(jù)庫, 存儲文件數(shù)據(jù)、結(jié)構(gòu)化數(shù)據(jù)和歷史統(tǒng)計(jì)數(shù)據(jù)等; 服務(wù)層分為服務(wù)治理層、聚合服務(wù)層、業(yè)務(wù)服務(wù)層、基礎(chǔ)服務(wù)層[4,5].服務(wù)治理層統(tǒng)一入口, 完成服務(wù)路由、流量管控、監(jiān)控報(bào)警等, 接收內(nèi)部應(yīng)用層和外部第三方應(yīng)用所有請求, 根據(jù)類別轉(zhuǎn)發(fā)到對應(yīng)的聚合服務(wù)或業(yè)務(wù)服務(wù). 聚合服務(wù)層對業(yè)務(wù)服務(wù)進(jìn)行封裝, 匯聚后端眾多的微服務(wù)邏輯, 把服務(wù)治理層的HTTP 請求轉(zhuǎn)發(fā)到業(yè)務(wù)服務(wù)層進(jìn)行業(yè)務(wù)邏輯處理, 以保證服務(wù)的低耦合和微服務(wù)特性. 業(yè)務(wù)服務(wù)層處理后臺眾多的業(yè)務(wù)邏輯. 基礎(chǔ)服務(wù)層提供原子性核心業(yè)務(wù)數(shù)據(jù)處理能力, 為業(yè)務(wù)服務(wù)層提供基礎(chǔ)能力支持; 應(yīng)用層包括房產(chǎn)管理、工程管理等11 個(gè)應(yīng)用, 負(fù)責(zé)客戶端接入和訪問; 客戶端分為PC 端和移動(dòng)端.
圖1 系統(tǒng)架構(gòu)
系統(tǒng)技術(shù)架構(gòu)自底向上分為支撐層、存儲層、數(shù)據(jù)層、應(yīng)用層、客戶端, 如圖2 所示. 支撐層包括分布式任務(wù)調(diào)度XXL-JOB、消息隊(duì)列RocketMQ、工作流Activiti 等, 為整個(gè)平臺提供共性組件; 存儲層提供以數(shù)據(jù)存儲為主的能力, 關(guān)系型數(shù)據(jù)庫MySQL 存儲結(jié)構(gòu)化數(shù)據(jù), 內(nèi)存數(shù)據(jù)庫Redis 提供緩存服務(wù), FastDFS存儲非結(jié)構(gòu)化數(shù)據(jù); 服務(wù)層包括服務(wù)治理層、聚合服務(wù)層、業(yè)務(wù)服務(wù)層、持久化層. 服務(wù)治理層服務(wù)網(wǎng)關(guān)Gateway 是一種基于MVC 模式的響應(yīng)式Web 框架,提供外部訪問的統(tǒng)一入口, 外部請求全部通過Gateway接入微服務(wù), 簡化前端調(diào)用邏輯. Eureka 用于服務(wù)注冊與發(fā)現(xiàn), 房產(chǎn)管理等微服務(wù)作為服務(wù)提供者注冊到Eureka Server 中, 服務(wù)調(diào)用者使用REST 接口調(diào)用服務(wù)提供者. Hystrix 提供資源隔離、降級機(jī)制等功能, 避免服務(wù)不可用時(shí)產(chǎn)生雪崩效應(yīng). 聚合服務(wù)和業(yè)務(wù)服務(wù)利用Spring Boot 快速構(gòu)建微服務(wù), 通過Feign 方式進(jìn)行交互, 并向上層提供接口服務(wù).應(yīng)用層與服務(wù)層基于HTTP 協(xié)議通信、JSON 格式數(shù)據(jù)進(jìn)行交互.
圖2 技術(shù)架構(gòu)
平臺通過整合后勤資源, 構(gòu)建涵蓋后勤管理中心、服務(wù)保障中心、物業(yè)監(jiān)控中心3 大中心, 面對后勤管理人員、物業(yè)人員、內(nèi)部員工等人員提供智慧食堂、便捷出入、出行服務(wù)、物業(yè)管理等全方位的智慧后勤服務(wù). 本文設(shè)計(jì)與開發(fā)的企業(yè)級智慧后勤保障平臺功能結(jié)構(gòu)圖如圖3 所示.
圖3 系統(tǒng)功能結(jié)構(gòu)圖
1.3.1 后勤管理中心(1)房產(chǎn)管理
對企業(yè)辦公用房、周轉(zhuǎn)房等后勤房產(chǎn)資源進(jìn)行可視化、圖形化、數(shù)據(jù)化管理, 基于GIS 地圖構(gòu)建企業(yè)后勤房產(chǎn)地圖, 實(shí)現(xiàn)“以圖管房”.
(2)工程管理
通過三維建模和高清視頻攝像頭等各類物聯(lián)網(wǎng)感知設(shè)備, 對工程項(xiàng)目現(xiàn)場及活動(dòng)進(jìn)行識別跟蹤, 實(shí)現(xiàn)重點(diǎn)項(xiàng)目施工現(xiàn)場實(shí)時(shí)可視化監(jiān)控. 建設(shè)智慧工地, 對現(xiàn)場數(shù)據(jù)進(jìn)行智能化采集、智慧化管理, 推廣綠色施工、文明施工, 實(shí)現(xiàn)標(biāo)準(zhǔn)化、在線化、可視化、流程化管控.
1.3.2 服務(wù)保障中心
(1)智慧食堂
借助“互聯(lián)網(wǎng)+”技術(shù), 實(shí)現(xiàn)菜譜制定、原料采購、線上訂餐、智能超市、就餐結(jié)算等食堂核心業(yè)務(wù)的系統(tǒng)支撐, 全面提升食堂的管理水平和服務(wù)能力. 搭建跨區(qū)域智慧結(jié)算中心, 實(shí)行區(qū)域內(nèi)異地就餐、野外配餐結(jié)算等, 解決外出辦公、工程施工、事故搶修、節(jié)日值班等領(lǐng)域長期存在的地域瓶頸、管理瓶頸、員工服務(wù)瓶頸等問題.
(2)便捷出入
結(jié)合人臉識別技術(shù)建立出入管理功能. 員工以便捷為主, 通過E 賬號實(shí)現(xiàn)人臉識別、刷卡等方式通行;訪客以安全為主, 通過現(xiàn)場自助登記、移動(dòng)預(yù)約、被訪人邀約、現(xiàn)場辦理等方式進(jìn)行訪客業(yè)務(wù)辦理.實(shí)現(xiàn)停車場管理, 包括車位管理、車位申請等功能, 實(shí)現(xiàn)人員車輛無感通行、進(jìn)出安全管理.
(3)便捷服務(wù)
整合企業(yè)內(nèi)外部優(yōu)質(zhì)資源, 為員工在線提供報(bào)修、理發(fā)、洗衣、訂票、送水等便利服務(wù), 提升服務(wù)質(zhì)效.
(4)出行服務(wù)
出行服務(wù)融合用車申請、審批、派車、接單和評價(jià)功能, 形成閉環(huán)管理, 規(guī)范公務(wù)出行. 通過集成社會(huì)化車輛服務(wù)資源, 實(shí)現(xiàn)公務(wù)車輛、社會(huì)車輛統(tǒng)一受理、按需分配, 為員工提供更加多樣便捷出行服務(wù).
(5)后勤E 賬戶
在現(xiàn)有實(shí)體卡基礎(chǔ)上, 引入員工人臉識別及虛擬卡, 建設(shè)統(tǒng)一后勤E 賬戶功能, 實(shí)現(xiàn)員工“實(shí)體卡、虛擬卡、面部信息” 3 種身份驗(yàn)證, 滿足員工門禁、支付等多種快捷身份驗(yàn)證需求. 支持人員信息管理、人臉照片管理、身份驗(yàn)證授權(quán)管理、電子賬戶信息管理和實(shí)體卡管理等功能, 實(shí)現(xiàn)跨單位通行及就餐等服務(wù).
1.3.3 物業(yè)監(jiān)控中心
(1)智能安防
應(yīng)用智能圖像識別技術(shù)、物聯(lián)網(wǎng)技術(shù), 設(shè)置訪問范圍電子圍欄, 建立來訪人員管理及非授權(quán)入侵告警,實(shí)現(xiàn)辦公區(qū)域的動(dòng)態(tài)安全監(jiān)管, 第一時(shí)間發(fā)現(xiàn)、定位異常人員及問題, 實(shí)現(xiàn)安防事件的全過程追蹤、安防設(shè)備的互聯(lián)應(yīng)用, 提高事件響應(yīng)速度.
(2)物業(yè)管理
開展統(tǒng)一物業(yè)管理, 通過工單形式, 實(shí)現(xiàn)物業(yè)人員和服務(wù)的數(shù)字化管理, 實(shí)現(xiàn)對秩序維護(hù)、工程維修等物業(yè)各部門人員的可管、可查和可追蹤, 以及實(shí)現(xiàn)樓宇日常安全防護(hù)、設(shè)備故障維修與日常巡查等服務(wù)管控.
(3)樓宇管理
通過接入智能化樓宇運(yùn)行系統(tǒng), 對建筑物內(nèi)的各種水、電、氣等設(shè)備進(jìn)行集中可視化監(jiān)控.
(4)統(tǒng)一監(jiān)控
采用全局化策略, 統(tǒng)一設(shè)計(jì)和規(guī)劃基于設(shè)備運(yùn)行、樓宇運(yùn)行、人員出入、車輛運(yùn)營、物業(yè)報(bào)修、食堂餐飲等統(tǒng)一物業(yè)活動(dòng)信息監(jiān)控體系.
系統(tǒng)基于Spring Cloud 微服務(wù)架構(gòu), 采用前后端分離模式進(jìn)行業(yè)務(wù)系統(tǒng)開發(fā)、部署和運(yùn)維[6,7]. 該系統(tǒng)后端框架采用Spring Boot、MyBatis-Plus 等核心技術(shù),前端框架基于Vue、ElementUI 等進(jìn)行構(gòu)建. Spring Cloud 是基于Spring Boot 進(jìn)行構(gòu)建服務(wù)的, 它主要特點(diǎn)就是提高了開發(fā)和部署上的效率, 用來構(gòu)建分布式系統(tǒng).
Spring Cloud 的主要目標(biāo)就是通過提供一系列內(nèi)部組件和框架, 迅速搭建一個(gè)分布式的微服務(wù)系統(tǒng), 還提供了分布式微服務(wù)系統(tǒng)的一些常用組件, 如服務(wù)注冊和發(fā)現(xiàn)、配置中心、熔斷器、路由網(wǎng)關(guān)等核心組件[8–10].
(1)服務(wù)注冊與發(fā)現(xiàn)
Eureka 作為服務(wù)注冊發(fā)現(xiàn)組件, 是微服務(wù)架構(gòu)的核心功能之一. 微服務(wù)部署之后, 一定要有服務(wù)注冊和發(fā)現(xiàn)的能力. Eureka 分為客戶端和服務(wù)端. 微服務(wù)工程的啟動(dòng)類上添加@EnableEurekaServer 注解, 則該微服務(wù)成為Eureka 服務(wù)端, 通過在配置文件application.yml 配置服務(wù)端地址、端口等, 這樣服務(wù)端啟動(dòng)后就能通過訪問Eureka 查詢到注冊到注冊中心的服務(wù). 微服務(wù)工程的啟動(dòng)類上添加@EnableEurekaClient 注解, 則該微服務(wù)成為Eureka 客戶端并作為服務(wù)提供者注冊到Eureka, 供服務(wù)調(diào)用者調(diào)用, 服務(wù)調(diào)用者在調(diào)用服務(wù)提供者時(shí), 無須關(guān)心服務(wù)提供者的地址、端口信息, 只需要配置服務(wù)提供者暴露在注冊中心服務(wù)名即可.
(2)網(wǎng)關(guān)與負(fù)載均衡
Gateway 網(wǎng)關(guān)是一個(gè)服務(wù), 用來管理授權(quán)、訪問控制和流量限制等, 是系統(tǒng)的唯一出口. Gateway 網(wǎng)關(guān)封裝了系統(tǒng)內(nèi)部的微服務(wù), 這樣REST API 接口服務(wù)就被API 網(wǎng)關(guān)保護(hù)起來, 隱藏在API 網(wǎng)關(guān)后面的業(yè)務(wù)系統(tǒng)就可以專注于創(chuàng)建和管理服務(wù), 客戶端只需要調(diào)用網(wǎng)關(guān)接口, 就可以調(diào)用到實(shí)際的微服務(wù). Gateway 網(wǎng)關(guān)可以結(jié)合Ribbon 完成負(fù)載均衡的功能, 可以自動(dòng)檢查微服務(wù)的狀況, 及時(shí)剔除或者加入某個(gè)微服務(wù)到可用服務(wù)列表.
(3)微服務(wù)熔斷機(jī)制
微服務(wù)架構(gòu)會(huì)有多個(gè)服務(wù)層調(diào)用, 基礎(chǔ)服務(wù)的故障可能會(huì)導(dǎo)致級聯(lián)故障, 進(jìn)而造成整個(gè)系統(tǒng)不可用的情況, 服務(wù)提供者的不可用會(huì)導(dǎo)致服務(wù)調(diào)用者的不可用, 并將不可用范圍逐漸放大. Hystrix 能夠在被調(diào)用的微服務(wù)出現(xiàn)異常時(shí)及時(shí)熔斷, 觸發(fā)調(diào)用方的異常處理流程, 防止調(diào)用方產(chǎn)生異常. Feign 中集成了Hystrix 組件相關(guān)的依賴, 但是Feign 中默認(rèn)是關(guān)閉了Hystrix 功能的, 需要在配置文件中添加配置feign.hystrix.enabled:true 開啟. 注解@FeignClient 上添加fallback 屬性配置快速失敗處理類, 該處理類是Feign Hystrix 的邏輯處理類, 必須實(shí)現(xiàn)被@FeignClient 注解修飾的接口.
當(dāng)前不同技術(shù)下的前后端校驗(yàn)方法相對成熟, 比如前端Vue 的表單rules 組件、后端Spring 的基于JSR303 的注解校驗(yàn)方法, 使用這些方法進(jìn)行校驗(yàn)時(shí),往往需要在對應(yīng)功能代碼上進(jìn)行分散、復(fù)雜的配置,在前后端規(guī)則一致的情況下需要配置兩份, 造成前后端數(shù)據(jù)校驗(yàn)規(guī)則維護(hù)難、復(fù)用性差的問題, 本文提出了一種基于元數(shù)據(jù)的前后端統(tǒng)一校驗(yàn)技術(shù), 通過構(gòu)造基礎(chǔ)元數(shù)據(jù)模型和功能元數(shù)據(jù)模型, 定義靈活、可拓展、可集中管理的校驗(yàn)規(guī)則. 利用數(shù)據(jù)庫表結(jié)構(gòu)信息作為初始化數(shù)據(jù)以減少配置工作量, 通過功能元數(shù)據(jù)與基礎(chǔ)元數(shù)據(jù)相結(jié)合的形式, 達(dá)到復(fù)用和拓展校驗(yàn)信息的目的.
(1)建立元數(shù)據(jù)模型
元數(shù)據(jù)模型如圖4 所示, 涵蓋數(shù)據(jù)的元數(shù)據(jù)信息,如字段類型、字符串長度、是否為空、最大值、最小值、正則表達(dá)式、數(shù)據(jù)描述等. 元數(shù)據(jù)模型包括基礎(chǔ)元數(shù)據(jù)模型和功能元數(shù)據(jù)模型. 基礎(chǔ)元數(shù)據(jù)模型與功能元數(shù)據(jù)模型通過基礎(chǔ)元數(shù)據(jù)主鍵進(jìn)行關(guān)聯(lián). 基礎(chǔ)元數(shù)據(jù)模型包含數(shù)據(jù)標(biāo)識字段、元數(shù)據(jù)字段和擴(kuò)展字段;功能元數(shù)據(jù)包含模塊編碼、功能編碼、功能元數(shù)據(jù)字段標(biāo)識、基礎(chǔ)元數(shù)據(jù)模型數(shù)據(jù)標(biāo)識等. 在基礎(chǔ)元數(shù)據(jù)模型中定義完整、通用的元數(shù)據(jù)信息, 功能元數(shù)據(jù)模型則復(fù)用基礎(chǔ)元數(shù)據(jù)模型的元數(shù)據(jù)信息, 并可以在此基礎(chǔ)上進(jìn)行修改、拓展.
圖4 元數(shù)據(jù)模型
(2)初始化基礎(chǔ)元數(shù)據(jù)表和功能元數(shù)據(jù)表
元數(shù)據(jù)管理工具抽取數(shù)據(jù)庫表結(jié)構(gòu)相關(guān)信息并對基礎(chǔ)元數(shù)據(jù)進(jìn)行初始化.對功能元數(shù)據(jù)進(jìn)行初始化, 每一張數(shù)據(jù)庫表作為一個(gè)模塊分別生成新增、更新等多個(gè)功能的元數(shù)據(jù)信息, 通過主鍵關(guān)聯(lián), 復(fù)用基礎(chǔ)元數(shù)據(jù)模型中的元數(shù)據(jù)信息. 使用元數(shù)據(jù)管理工具將從數(shù)據(jù)庫表結(jié)構(gòu)抽取的元數(shù)據(jù)信息中與實(shí)際校驗(yàn)需求不符的,通過界面操作的方式對元數(shù)據(jù)信息內(nèi)容進(jìn)行修改、補(bǔ)充, 將多張業(yè)務(wù)表包含同一名稱且校驗(yàn)規(guī)則一致的字段, 去掉重復(fù)的元數(shù)據(jù)信息. 將基礎(chǔ)元數(shù)據(jù)信息與功能元數(shù)據(jù)信息整合為真正的校驗(yàn)規(guī)則, 如圖5 所示, 通過基礎(chǔ)元數(shù)據(jù)主鍵將兩個(gè)模型進(jìn)行關(guān)聯(lián), 功能元數(shù)據(jù)中不為空的元數(shù)據(jù)信息覆蓋基礎(chǔ)元數(shù)據(jù)信息.
圖5 校驗(yàn)規(guī)則
(3)校驗(yàn)規(guī)則存入Redis 共享緩存
為了提升校驗(yàn)規(guī)則讀取性能, 將校驗(yàn)規(guī)則存入Redis 共享緩存中. 前端通過接口調(diào)用形式, 以模塊編碼和功能編碼作為查詢條件, 來獲取校驗(yàn)規(guī)則進(jìn)行數(shù)據(jù)校驗(yàn). 服務(wù)端通過自定義注解方式進(jìn)行校驗(yàn), 并通過讀取緩存, 以模塊編碼和功能編碼作為查詢條件, 來獲取校驗(yàn)規(guī)則進(jìn)行數(shù)據(jù)校驗(yàn).
結(jié)合以上步驟, 當(dāng)前后端校驗(yàn)規(guī)則發(fā)生變化時(shí), 只需要改變元數(shù)據(jù)表的校驗(yàn)規(guī)則, 并刷新元數(shù)據(jù)緩存, 從而就保證了前后端校驗(yàn)的一致性, 也達(dá)到了維護(hù)簡單的效果.
企業(yè)采用物理安全隔離裝置實(shí)現(xiàn)內(nèi)外網(wǎng)隔離, 內(nèi)外網(wǎng)只允許SQL 語句穿透傳輸, 導(dǎo)致內(nèi)外網(wǎng)服務(wù)部署復(fù)雜且交互困難, 本文提出了內(nèi)外網(wǎng)穿透傳輸技術(shù), 該技術(shù)通過將數(shù)據(jù)交換需求轉(zhuǎn)化為規(guī)范化配置, 使用SQL 對數(shù)據(jù)庫中間表操作, 實(shí)現(xiàn)內(nèi)外網(wǎng)多種通信方式的數(shù)據(jù)交換. 房產(chǎn)管理、便捷出入等業(yè)務(wù)服務(wù)在外網(wǎng)只需要部署前端服務(wù)以及其他必要組件即可支持業(yè)務(wù)系統(tǒng)的正常運(yùn)行.
內(nèi)外網(wǎng)穿透傳輸技術(shù)示意圖如圖6 所示.調(diào)用方通過網(wǎng)關(guān)調(diào)用穿透傳輸服務(wù)接口, 調(diào)用接口后需要經(jīng)過安全校驗(yàn), 包括防重放、權(quán)限校驗(yàn)以及加密校驗(yàn), 并對參數(shù)進(jìn)行解密. 穿透傳輸服務(wù)解析出HTTP 等請求的請求類型、請求參數(shù)、請求地址等信息, 并通過SQL語句將解析出的請求信息存入內(nèi)網(wǎng)數(shù)據(jù)庫, 同時(shí)開啟輪詢等待響應(yīng). 對端穿透傳輸服務(wù)輪詢模塊定時(shí)批量獲取數(shù)據(jù)庫中的請求數(shù)據(jù), 使用線程池開啟多條線程分別處理請求, 獲取請求的請求類型、請求參數(shù)、請求地址等數(shù)據(jù)并根據(jù)請求數(shù)據(jù)調(diào)用對應(yīng)內(nèi)網(wǎng)業(yè)務(wù)服務(wù).完成調(diào)用后, 穿透傳輸配置模塊對返回?cái)?shù)據(jù)進(jìn)行轉(zhuǎn)換為標(biāo)準(zhǔn)配置存入數(shù)據(jù)庫. 請求端穿透傳輸服務(wù)開啟的輪詢發(fā)現(xiàn)請求已有返回, 從數(shù)據(jù)庫中獲取返回?cái)?shù)據(jù), 并刪除數(shù)據(jù)庫中該條轉(zhuǎn)發(fā)記錄, 對返回?cái)?shù)據(jù)進(jìn)行解析后返回調(diào)用方.
圖6 內(nèi)外網(wǎng)穿透傳輸技術(shù)示意圖
測試機(jī)操作系統(tǒng)Windows 10, 硬盤容量500 GB,內(nèi)存32 GB, CPU 為8 核. 應(yīng)用服務(wù)器配置Tomcat 8.5 和JDK 1.8, 操作系統(tǒng)CentOS 7, 硬盤容量512 GB,內(nèi)存64 GB, CPU 為16 核. 數(shù)據(jù)庫服務(wù)器配置MySQL 5.7, 操作系統(tǒng)CentOS 7, 硬盤容量512 GB, 內(nèi)存64 GB,CPU 為16 核.
本文以便捷出入模塊的內(nèi)部拜訪為例, 對內(nèi)部拜訪申請創(chuàng)建、審批、查看詳情、消息等功能進(jìn)行測試.內(nèi)部拜訪申請創(chuàng)建如圖7 所示, 申請人填寫被訪人單位、姓名、電話、拜訪事由等信息.
圖7 內(nèi)部拜訪申請創(chuàng)建
內(nèi)部拜訪審批如圖8 所示, 被訪人可以在待辦列表里通過或駁回申請人的申請, 已審批過的申請可以在已經(jīng)列表中查看.
圖8 內(nèi)部拜訪審批
內(nèi)部拜訪申請?jiān)斍槿鐖D9 所示.
圖9 內(nèi)部拜訪申請?jiān)斍?/p>
被訪人已經(jīng)審批過的申請, 申請人可以在我的消息里查看相關(guān)消息, 如圖10 所示.
圖10 消息提醒
性能測試選擇用戶登錄、線上點(diǎn)餐、客飯申請、出行申請4 個(gè)HTTP 接口進(jìn)行測試, 并發(fā)用戶數(shù)為100 個(gè), 對其平均響應(yīng)時(shí)間進(jìn)行了測試, 測試結(jié)果如表1所示, 系統(tǒng)具有較好的并發(fā)處理能力.
表1 性能測試
智慧后勤保障平臺目前已在國網(wǎng)寧夏電力、中國電力科學(xué)研究院試運(yùn)行, 為2 萬多名員工提供服務(wù)保障, 對員工出行、就餐等生活方式帶來了實(shí)實(shí)在在的變化, 特別是在疫情期間, 訪客線上預(yù)約, 被訪人線上審批, 減少訪客登記人員聚集, 提高訪客通行效率. 同時(shí), 平臺為企業(yè)各后勤業(yè)務(wù)子系統(tǒng)提供統(tǒng)一入口, 大大降低了應(yīng)用層各子系統(tǒng)的業(yè)務(wù)協(xié)同, 使數(shù)據(jù)在各個(gè)應(yīng)用子系統(tǒng)之間快速流轉(zhuǎn). PC 應(yīng)用端和移動(dòng)端首頁如圖11 和圖12 所示.
圖11 移動(dòng)端首頁
圖12 PC 應(yīng)用端首頁
本文基于微服務(wù)的實(shí)現(xiàn)技術(shù)Spring Cloud 開發(fā)企業(yè)級智慧后勤保障平臺, 打破企業(yè)各類單體式后勤業(yè)務(wù)應(yīng)用系統(tǒng)間壁壘, 貫通后勤協(xié)同數(shù)據(jù)共享渠道, 為企業(yè)提供統(tǒng)一平臺、統(tǒng)一入口的立體后勤服務(wù)新模式,助力提升后勤管理、保障、服務(wù)的多元化支撐能力,推進(jìn)后勤工作提質(zhì)增效, 強(qiáng)化后勤精益管理水平, 實(shí)現(xiàn)后勤管理和服務(wù)的信息化、數(shù)字化、智能化轉(zhuǎn)型升級.