APP下载

基于微服务架构的浙江水利统一门户设计与实现

2023-05-21邱志章顾文钰周礼英邵悦

水利水电快报 2023年5期
关键词:门户统一架构

邱志章 顾文钰 周礼英 邵悦

摘要:

为落实水利部“智慧水利”、浙江省数字化改革工作部署,解决浙江省水利行业现有业务应用孤岛和数据资源分散等难题,基于主流微服务架构,建设统一身份认证、统一消息中心、统一待办等微服务,建成省市县三级水利统一工作平台,推进行业内纵向跨层级信息共享、业务协同。平台运行情况表明:水利人员办事、办公效率显著提升,可为浙江省水治理体系与治理能力现代化提供技术支撑。

关键词:

统一门户; 应用孤岛; 数据共享; 业务协同; 微服务架构

中图法分类号:TV21;F426.91;F49

文献标志码:A

DOI:10.15974/j.cnki.slsdkb.2023.05.020

文章编号:1006-0081(2023)05-0122-06

0 引 言

近几年,浙江水利全面贯彻落实国家、水利部、浙江省的工作部署,围绕“数字中国”“智慧水利”“数字化改革”等工作,全力推动水利信息化建设,有效支撑了各项水利工作。目前,浙江省水利行业已建成6 000余个水文测点、3 000余个取用水在线测点,水利感知体系不断完善;初步建立自然类、工程与设施类、非设施类等水利数据主题库,积累了一定体量的数据资源;建成并投入使用的水利业务应用300余个,涉及防汛、工程建设、水资源、工程运行、水政务管理等多方面核心业务,为水利业务与信息技术融合积累了经验[1]。但仍存在信息共享、业务协同不足等问题,不能满足数据驱动业务、水利强监管、数字化改革等要求,难以实现浙江水利“走前列”目标。因此,浙江水利围绕数字化改革需求,提出建设横向协同、纵向联动的全省水利数字化统一门户。

针对目前水利信息化应用存在的问题,大量学者和全国水利行政主管单位开展了水利门户的研究与建设。例如,陈海龙[2]基于J2EE开展水利信息门户系统研究,实现了统一账号和组织管理以及单点登录、内容管理、个性化定制、业务流系统、系统数据集成等功能;李杰[3]基于Mule ESB的水利信息集成系统体系结构,探索了在SOA及云环境下进行系统集成的关键技术,开发实现了基于Mule ESB的水利信息集成系统;淮河水利委员会综合应用门户采用SOA架构,基于主流成熟的技术,对数据资源、应用服务和业务系统等进行整合,形成一站式的综合性应用门户[4];江苏省水利厅水利应用集成门户基于统一用户管理和CA认证进行开发,通过将各类业务、应用资源整合在一起,为用户提供统一的入口,实现各部门间的信息同步、共享[5]。浙江水利行业各类用户约2.8万余人,日均访问超10 000人次,需要解决多用户访问、多应用集成、数据跨层级跨部门共享等难题,通过引入微服务技术,打破传统SOA架构模块之间高度依赖、紧密耦合、扩展性不足、运维复杂的壁垒,建设统一水利数据仓,搭建稳健、高效的浙江水利统一门户,解决水利数字化改革中面临的“数据共享、业务协同”的难题,为水利履职提供强有力的技术支撑。

1 微服务架构概述

2014年,ThoughtWorks公司的首席科学家福勒提出“微服务架构”概念[6],这一理念指导的软件应用架构模式,成为了当下最火热的话题,现已普遍用于各类信息化平台的开发。

微服务是把原有的大型软件按照业务逻辑拆分成多个独立部署、运行的微服务,每个微服务对应一个最小业务单元,并且只負责完成该项最小业务。相对于传统架构,微服务架构的主要技术特点是独立部署、松耦合、组件化、高度自治、去中心化[7-9],主要表现在以下几个方面:

(1) 一组单一职责的服务。尽可能将业务细化至最小颗粒度,逐个开发单一职责的微服务,组合后形成微服务群提供业务服务。

(2) 独立部署运行和灵活扩展。每个服务具备比较完整的模型边界,支持独立部署运行和扩展,服务之间低耦合共存,实现微服务灵活管理,当软件需要调整时仅需对单个或数个服务进行调整。

(3) 独立开发和演化。每个微服务可由不同人员或团队开发,甚至采用不同技术开发,可以有效地提升微服务开发效率与技术效果。

2 基于微服务的水利统一门户设计

2.1 总体架构设计

水利统一门户建设采用微服务体系架构,部署于浙江省政务专有云上,通过数据层、服务层、业务应用层、用户访问层4层架构,实行门户“统一建设、统一部署、三级应用”,形成全行业统一工作平台。总体架构设计如图1所示。

(1) 数据层。由统一用户库、应用集成库、服务管理库、业务协同库、运维管理库等应用数据库构成,为统一门户集成提供数据存储管理服务。

(2) 服务层。各业务应用在建设过程中,基于微服务架构理念进行开发,按照水利业务需求将应用拆分成多个微服务,形成微服务资源池,各业务应用通过检索、申请、调用资源池中的各项服务,为平台提供弹性伸缩、限流降级、灰度发布等高可用性能保障。

(3) 业务应用层。根据浙江省水利核心业务,水利各部门将其部分存量系统、新建应用统一上架至门户,通过门户提供的支撑能力,按照授权访问、单点登录、用户认证等方式,实现各类业务应用集成。

(4) 访问层。基于“浙政钉”,为浙江省各级水行政主管部门人员、水利厅局直属企事业单位人员提供各项业务办理的统一访问入口。水利工程参建企业、取水户等其他组织机构中的各类人员可通过浏览器进行访问。

2.2 业务协同设计

浙江水利统一门户上接水利部、省政府大数据发展管理局,下至市县水行政主管部门、重点水管单位,横向打通省、市、县三级相关各部门。通过深化梳理水利核心业务、量化业务指标清单、细化共享数据清单、优化事项业务流程、深度融入“浙政钉”,梳理形成了标准协同、用户协同、数据协同、业务协同、监管协同等5类业务协同关系,业务协同通用架构如图2所示。

(1) 标准协同。制定统一数据标准、技术标准、工作标准,指导省市县三级梳理水利核心业务,建设各自水利数据仓、特色应用,做好数据归集更新工作。

(2) 用户协同。基于“浙政钉”,建立平台统一用户体系和认证功能,实现用户统一、认证统一、授权统一的多部门、跨层级的用户协同,做好省级用户与水利部用户体系的协同对接。

(3) 数据协同。基于水利核心业务数据共享需求,建立水利数据仓,实现纵向与水利部、市县水行政主管部门、重要水管单位数据共享交换;通过省政府一体化智能化公共数据平台,实现横向与省级其他厅局间数据共享交换、数据汇集与对外服务。

(4) 业务协同。结合水利核心业务涉及部门协同环节,优化再造业务流程,建立公共应用资源超市,供各业务应用共同调用,突破传统业务垂直运作、单部门内循环模式,消除应用孤岛,避免重复建设,实现水管理业务应用协同。

(5) 监管协同。根据水利行业强监管的需要,结合水利综合考核,量化业务评价指标,形成统一监管清单,在线协同多层级跨部门联合检查,提高水事务监管效率。

2.3 数据共享架构设计

浙江省水利数据共享包括水利部门内共享和外部门共享。外部门共享通过浙江省一体化智能化公共数据平台实现同级部门横向数据的共享交换;水利部门内共享通过水利数据仓回流实现省市县水利数据的纵向共享交换,并依托水利部建设的数据三级贯通系统实现与水利部、太湖局和长江水利委员会(长江委)的数据共享交换。数据共享架构如图3所示。

2.4 安全体系设计

浙江省水利统一门户按照国家安全可替代和三级等保测评要求,依托省政务云提供的安全防护体系,应用SM2,SM3,SM4国产化商用加密算法技术,基于国产化设备,构建门户多层次、立体化的安全纵深防御体系,确保门户物理安全、网络安全、数据安全和应用安全。门户部署在省政务云的专有云区,实行省级部署、省市县三级共用的部署方式,通过政务外网实现与水利部、省级水行政主管部门、市县水行政主管部门的数据共享和业务协同。面向社会公众的部分应用部署于公有云区,用户通过“浙政钉”“浙里办”或网页为入口使用对应服务,水利统一门户部署架构如图4所示。

3 基于微服务的水利统一门户实现

3.1 技术关键

(1) 基于“浙政钉”体系的统一用户身份认证。浙江水利统一门户依托浙江省统一的政府系统掌上协同办公平台“浙政钉”的用户认证体系,拓展覆盖水利行业工程管理单位、涉水企業等非“浙政钉”用户,构建全省水利行业用户统一用户身份认证体系,破解了“浙政钉”与非“浙政钉”用户身份认证体系不统一的难题,实现用户统一管理、维护与更新同步,为建设全省水利全行业统一门户提供统一用户支撑。

(2) 基于政务云公共基础设施的省市县三级统一水利数据仓。基于浙江省政务云公共基础设施,采用MPP海量并行处理分布式架构,按照经典3层逻辑分层原则,构建水利行业内“物理分散、逻辑统一”的省市县三级统一数据仓,解决海量数据存储、低延时响应等难题,高度解耦数据输入和共享,降低问题数据风险,采用hadoop体系架构建设水利数据共享交换平台,实现水利数据资源集中存储、一数一源、统一共享,为水利业务决策提供准确的数据支撑。

(3) 基于国产化的统一安全技术体系。依托政务云架构安全技术体系,按照国家安全可替代和三级等保要求,应用国产化算法加密技术,制定数据安全策略,提高数据安全自主可控水平,打造国产化的门户统一安全技术体系[10]。

3.2 技术实现

水利统一门户的开发主要基于微服务架构模式,将门户分解为一系列若干个松耦合、高内聚的微服务,每个微服务对应一个最小业务功能,并且只负责完成该项最小业务,通过组合不同的微服务而实现对应业务功能。

在技术实现上,基于微服务架构进行设计,前后端完全分离。前端开发以Vue.js等主流编程框架作为基础框架,以JSON作为数据交换格式,从界面布局、色彩表达、页面元素形式、文字格式等方面对水利统一门户的Web端和移动端进行规划、设计,形成统一的风格,保证了前端应用稳定性、可维护性和较好的用户体验。

后端开发采用Spring Cloud Alibaba分布式微服务技术框架,依托其提供的服务网关、服务调用、服务监控、服务容错、配置中心、安全认证等相对完整的微服务生态,搭建了注册与配置中心Nacos、服务网关Gateway、在线监控SpringBoot Admin、流量监控Sentinel、熔断限流Hystrix、链路跟踪Skywalking等组件,建成服务自动注册与发现、在线参数动态配置、统一路由分发、流量负载监控、接口过载限流降级、服务调用全链路追踪、性能监控、网络拓扑、异常跟踪等能力,构建了应用管理、统计报表、浙政钉服务、用户认证等功能服务,快速建成浙江省省市县三级水利全行业统一门户,微服务技术架构如图5所示。

3.3 功能实现

通过对各微服务之间进行逻辑组合,开发出面向浙江省水利全行业的统一门户及其支撑体系、统一人员管理后台、水利数据中心。

(1) 统一门户及其支撑体系。基于微服务建成统一待办中心、统一消息中心、应用管理、门户定制、报表中心等应用支撑体系,支撑搭建完成浙江水利PC端和移动端统一门户,实现重要工作“一屏掌控”、核心业务“一键直达”、综合政务“便捷办理”、综合门户“三级贯通”、门户配置“千人千面”、任务办理“及时提醒”和新闻信息“即时推送”,如图6所示。

(2) 统一人员管理。主要提供组织、人员管理等功能,实现了省市县三级水利行业3 000余个组织与2.8万用户人员的统一管理,并基于浙政钉用户体系打造统一用户认证体系,提供统一门户的组织用户数据服务接口。

(3) 水利数据中心。基于水利数据编目、汇聚、治理、共享的全流程管理需求,提供数据目录、数据汇聚、数据清洗、数据共享与数据安全等功能,实现了水利数据资源集中存储管理、水利数据纵向跨层级与横向跨部门共享交换、数据“一数一源”,全面消除“数据孤岛”。

(4) 微服務治理体系。建成水利门户微服务治理体系,发布统一服务网关,以负载均衡方式,分发用户请求,具备高度的可扩展性和伸缩性。通过服务监控,及时感知服务上下线,并结合钉钉实现预警提醒。通过链路跟踪,方便了解各服务的负载情况,分析服务的性能及异常情况。为保障平台的稳定性,对于大流量请求进行熔断限流。按照功能模块发布了水利门户、数据中心、共享交换、用户认证、“浙政钉”对接、应用管理、用户管理、消息中心、待办处理、日志管理、数据统计、定时任务、数据上报、信息资源库、门户管理、晾晒台、疫情填报等30余个微服务,70余个服务实例。

目前,浙江水利统一门户已正式上线运行,服务省市县三级2.8万用户,接入应用300余个,日均访问量达15 000余人次,年访问量近700万人次。

4 结 语

本文基于微服务框架,整合分散、独立、单一的业务应用,建成省市县三级互联互通、信息共享、业务协同的稳健、高效的浙江水利统一门户,具有良好的兼容性、适用性,具备较高的稳定性、扩展性,解决了业务应用入口多、账号多、应用林立、各自为阵的问题,应用“信息孤岛”严重的难题,实现部门之间跨域融合、协同办公,最大限度地破除信息孤岛、应用孤岛,大幅提升水利信息资源、功能应用共享水平,提高了水利履职效能,并有效避免了水利信息化重复建设,节约了投资,实现数据资源和应用功能效能最大化,充分发挥了水利信息化投资效益。

参考文献:

[1] 虞开森,姜小俊,金宣辰.政府数字化转型下浙江智慧水利设想[J].水利信息化,2018(6):11-15.

[2] 陈海龙.基于J2EE的水利枢纽信息门户系统设计与实现[D].广州:华南理工大学,2012.

[3] 李杰.基于MuleESB的水利信息集成应用研究与开发[D].西安:西安理工大学,2015.

[4] 李凤生,郏建,徐超.淮委综合应用门户整合的设计与实现[J].水利信息化,2020(5):28-31.

[5] 高祥涛,司存友,戚荣志,等.水利应用集成门户系统的设计与实现[J].水利信息化,2017(5):51-55.

[6] 纽曼.微服务设计[M].北京:人民邮电出版社,2016.

[7] 李春霞.微服务架构研究概述[J].软件导刊,2019,18(8):1-3,7.

[8] 杨宇,焦丽琴.基于微服务的企业应用设计与实现[J].电子科学技术,2016(5):623-625.

[9] 樊启萌,姚华明,汤正阳,等.基于微服务架构的水资源数据接口设计与实现[J].水利水电快报,2022,43(10):103-107.

[10] 包志炎,姜小俊,黄康,等.浙江水利数字化转型总体框架和关键技术研究[J].水利信息化,2020(2):1-8.

(编辑:李 晗)

Abstract:

For implementing the deployment of "Smart Water Network" of the Ministry of Water Resources and the digital reform of Zhejiang Province,to solve the problems of isolation and information dispersion of the existing business applications in the water conservancy field in Zhejiang Province,the unified identity authentication,unified message center,unified to-do and other micro-services were established,and a unified portal of water conservancy at 3 levels(province,city and county) were built based on the mainstream micro-service architecture.It promotes the cross-level and cross-sectoral data sharing and business collaboration,and significantly improves the working efficiency,and provides technical support for the modernization of water governance system and governance capacity in Zhejiang Province.

Key words:

unified portal; application isolated island; data sharing; business collaboration; micro-service architecture

猜你喜欢

门户统一架构
基于FPGA的RNN硬件加速架构
关隘:要道门户
西域门户——两关遗址
坚持严管和厚爱相统一的着力点
功能架构在电子电气架构开发中的应用和实践
碑和帖的统一,心和形的统一,人和艺的统一
统一数量再比较
基于内外网门户系统的研究
LSN DCI EVPN VxLAN组网架构研究及实现
一种基于FPGA+ARM架构的μPMU实现