南京市政务云公共能力开放平台建设分析

(整期优先)网络出版时间:2023-06-20
/ 3

南京市政务云公共能力开放平台建设分析

陈晟

江苏云启未来网络科技有限公司 江苏南京 210000

摘要:本文主要分析了南京市政务云公共能力开放平台建设项目,并对如何升级该项目提出了一些建议。

关键词:南京市政务云;公共能力开放平台建设

一、项目建设内容

建设公共服务开放平台,通过微服务架构设计,引入智能网关和多端快速开发平台,将公共基础能力进行统一管理和发布;

二、公共能力开放平台建设方案

公共能力开放平台建设项目是利用信息技术,通过微服务框架的搭建,逐渐将政务云上现有的基础公共能力(如统一身份认证、统一支付、可信数据等)进行微服务改造,形成原子化的公共能力,通过将各类公共能力在智能网关上的注册,形成可以对各级政务系统提供公共能力应用支撑,后续将逐步扩大基础公共能力微服务化的范围,将更多的基础公共能力和业务支撑通用能力注册到智能网关进行对外服务。

2.1多端快速构建平台

2.1.1平台概述

WeApps多端应用快速构建平台具有集约化、一站化的特性,能够将组合应用移动开发需要的专业能力,并将其模块化,再利用可视化配置加低代码的方式,快速将应用的主体架构搭建完成,可以助力各个业务开发方在此基础上快速建设、上线各类移动应用。平台具有一次开发、多端运行的优势,支持微信小程序、支付宝小程序、APP,H5等常见移动应用。可以说,WeApps多端应用快速构建平台是覆盖移动应用的开发、测试、发布、运营的全生命周期的云端开发平台,能够高效完成不同类型项目平台的构建。

WeApps产品架构:

2.1.2平台功能

(1)应用门户。应用门户是移动应用集约化建设的总入口和管理平台。平台通过多用户分级管理的方式进行平台上应用的管理权限设置。管理员可以创建应用开发任务,将任务分配到指定用户,指定用户在平台上完成应用创建、管理应用、查看运营数据,查看文档,查看应用日志、管理组件、模板等日常管理操作。

(2)用户中心。用户中心是平台功能的集成,为平台管理员提供组织机构信息的管理能力,支持对政府机构和相关信息进行增、删、改、查以及搜索等各类操作,能够将有价值的信息通知给用户。政务云平台管理员(或机构管理员)可对指定组织机构进行机构成员的管理维护,包括对机构成员的查看、新增、编辑、删除,当机构成员发生变动时可以在平台上实时更新。平台管理员可以为不同的用户指定不同的角色,限制部分用户的权限,或者给部分用户开通更多的权限,通过基于角色的权限控制体系实现用户权限控制。包括平台管理员、机构管理员、机构成员、开发商负责人、开发商成员等。用户可以查看、修改自己的个人信息。各类管理员可以管理下属用户的信息。

(3)资源文档中心。平台提供《平台管理手册》,用于各类管理员查看如何进行平台管理,帮助管理人员更快掌握平台的使用方式。同时,系统提供文档搜索功能,将重要的文档上传到云服务器中,用户可以根据关键词搜索相关文档。系统提供文档库、文档列表、文档编辑三大类管理功能。管理员可以通过本平台维护系统开发和管理文档。文档库提供文档分类管理功能,通过将某一类文档归类。文档列表提供文档的集中展示,提供按照标签的快速检索功能。文档编辑功能提供富文本、Markdown两种格式编辑在线文档,便于管理人员和开发人员使用。

(4)组件中心。组件中心提供一批成熟的通用组件、业务组件、开发SDK组件、运维组件,便于平台用户直接使用,提升平台研发效率。同时,组件中心提供了自定义组件的注册、编辑、发布、删除功能,便于组件的不断完善。

(5)模板中心。模板中心提供了一批成熟的业务模板,也支持用户自定义业务模板,形成云平台业务开发的良好生态。平台内储存在大量的模板,可以供给平台建设人员直接使用,使得公共能力开放平台的建设变得更加高效。模板是垂直行业的业务积累,是生态建设的重要一环,模板的可扩展性是本平台的一个特性,在可视化配置端,搭建好的页面、组件可以快速保存到平台的模板库,为后续业务继续复用,进一步提高技术和业务能力的复用。

(6)日志管理。提供平台日志的收集和查询功能,提供按操作人员、操作时间、操作动作等条件进行查询,提供日志列表功能。

(7)数据分析。提供平台的运营数据分析功能,包括运营数据报表(PV、UV、留存率等)、运营数据折线图等。

(8)应用管理。提供应用的搜索、展示、编辑、预览、下载等功能,进行平台下各个应用的统一管理。

(9)应用测试。测试是应用生命周期很重要的一环,传统的测试都是靠人肉来测试,而且往往只能做到功能级别的测试,还有一个很重要的痛点,移动端应用面对的是成百上千种手机终端,传统厂商很难全面覆盖到。平台集成了自动化测试服务WeTest,从此实现了绝大部分测试全自动化进行,让应用在功能上、兼容性上、性能上都达到行业领先的质量级别。

2.1.3微服务开发支持

微服务开发支持,从外向内数据流,通过入口的负载均衡,进入API网关进行鉴权限流后,访问到后端某个微服务进行业务处理。微服务本身需要有全生命周期、基础监控、版本控制、日志处理和告警等。微服务之间需要进行负载均衡、限流、鉴权、路由能力。从整体的角度对微服务调用及依赖关系进行跟踪排障,包括分布式配置、分布式事务等必备技术组件能力,从而更好地支持微服务开发。

当用户注册TSF服务的时候,同时有三方参与其中,包括注册中心、服务提供者和服务调用者。注册中心需要收集提供服务的人员和调用服务的人员信息,并且把各自的地址信息储存在注册中心的服务器中,后续需要使用的时候可以按照规定向注册中心提交申请,调用注册服务的列表。通常情况,TSF的服务注册中心是直接使用Consul,想要和注册中心进行通信,需要借用Spring Cloud Consul组件。

TSF的功能强大,除了能够全面控制应用,管理和更新现有版本,还能够决定应用的启动和停用,完成灰度发布的任务。JVM参数可以管理人员自己设置,但是需要借助TSF控制台来完成,而且每次设置JVM参数的操作都会被微服务平台记录下来,后续应用如果出现问题可以在平台上查阅,确定应用出现问题的原因。

TSF具备监督和控制的功能,能够对应用运行的情况进行监控,包括IaaS基础监控和应用监控,从而在应用发生问题时及时发现。IaaS基础监控的指标包括实例CPU、内存、网络和磁盘等,应用监控的指标包括应用的QPS,请求时间和请求出错率等。分布式调用链分析包括调用链查询和调用链详情,用户可以利用TSF分析分布式调用链,查看调用链的时间、位置和耗时情况等。

TSF整体架构包括4个大的模块儿,来支持整体微服务功能:

1、TSF管控平台

管控模块平台接收前端请求,进行控制台相应操作的逻辑处理,并与容器平台/虚拟机平台进行请求交互,执行相应操作请求

2、TSF基础服务组件

基础服务组件包括ES集群,数据库,consul接入层及服务层。

3、TSF虚拟机应用平台

包含在虚拟机上进行部署全生命周期管理,软件包版本管理,监控告警,客户端agent等能力

4、TSF容器应用平台

该模块用来对接k8s平台,需要客户侧的容器平台满足tsf对于k8s接口信息。该模块可以进行底层集群、容器的全生命周期管理,让应用平台的运行更加高效。

2.1.4容器管理平台架构

图片包含 屏幕截图  描述已自动生成

容器服务平台整体结构从上往下一共分为4层:

1)最上层是应用服务层,主要支持微服务、中间件以及大数据服务。微服务平台的功能比较全面,能够大致架构起微服务应用,提供微应用以及微服务。大数据功能支持Hadoop、Spark等组件。

2)第二层是场景支持层,主要支持容器管理、自动运维、开发测试以及IT治理等功能。容器管理主要从网络、配置、编排等领域实现了对容器的全方位管理。自动运维主要基于监控、告警、面板等功能实现了对平台以及应用的自动化运维。开发测试基于CI/CD功能,具有较强的集成特征,可以实现了持续集成持续发布。IT治理主要利用RBAC权限管理技术以及多租户技术,实现了灵活的权限控制以及多租户环境的数据隔离。

3)第三层是容器平台层,主要支持容器调度、集群调度以及跨云编排等功能。容器调度基于K8S以及二次开发功能完成了对容器的灵活调度。集群管理利用二级扩缩容等技术实现了对集群资源的有效管控。无论何种形态的云都可以有效管理。

4)第四层是基础设施层,包括物理环境、虚拟化、私有云、托管云以及公有云等资源,是容器服务平台中不可或缺的一层。

2.2智能网关

智能网关包括服务网关、准入网关、边界网关和接入网关等,比传统的网关更加智能。但是使用智能网关时需要提供API的完整生命周期管理,并且将自身的关键业务封装起来,避免有黑客获取用户大量的隐私数据。

智能网关非常重要,它的安全性非常显著,能够确保公共能力开放平台与互联网服务实现有效连接,并顺利完成数据交换,还不用担心关键数据泄露。

API网关为客户端提供透明的API调用,是服务的唯一访问入口,通过其他入口是无法获取服务的。智能网关能够完成自动监控、负载均衡、缓存、服务限流、服务调用统计等非业务功能。

2.2.1智能网关功能

智能网关是一款中间件产品, 智能网关核心功能是让身份鉴权和内外网穿透更安全、更简单。功能包括:

1、接口全生命周期管理功能,包括接口的配置、发布、维护、接口版本管理等功能;

2、安全的认证服务, 限流功能等;

3、接口协议转换,可支持http, https, WebSocket, rest等接口的接入与转换;

4、提供可视化的监控信息,让信息的流动处在控制范围内,方便运维管理。

如上图所示,其中的交管接口、出入境接口、地税接口等,是第三方合作伙伴开发的业务系统接口,需按规范与智能网关对接。其中OpenAPI是自主开发的一组公共功能组件。OpenAPI目前包含Adapter组件,该Adapter是实现屏蔽各地市的公积金接口的差异而开发的。管理平台,是对智能网关、第三方应用的有效管控。

小程序调用后端的接口能力时,需先将请求调用发给智能网关;智能网关将小程序的请求转发给后端对应的业务接口,再把后端业务接口返回的结果,返回给小程序。

智能网关会对请求进行鉴权、路由、及适配接口转换等处理,处理不通过,则返回对应错误码。第三方合作伙伴的小程序,调用智能网关时,请求路径为 /thirdapi/第三方/xxx, 智能网关会将请求转发到第三方API服务。平台开发的小程序,请求路径为/api/xxx, 智能网关会将请求转发到openapi服务。如下图所示。

2.2.2智能网关架构定位

智能网关是本项目的接口集成的核心组件,各业务接口(包含“一网通办”PC端和移动端)需按照智能网关的接入规范,与智能网关对接。智能网关是南京市政务云公共能力开放平台建设项目的核心组件,想要接入平台的业务需要先经过智能网关的审查。智能网关还能够集成各个业务办理系统,将诸多的业务办理功能汇集到同一个平台上,只不过业务办理系统需要提供专门的接口供给智能网关使用,报文使用json(API网关为客户端,业务办理系统为服务端)。当智能网关向外界提供服务的时候,是以标准API的形式出现,再根据用户所在地或者路由器所在位置,确定能够办理的业务。

手机屏幕截图  描述已自动生成

如上图所示,其中的交管接口、出入境接口、地税接口等,是第三方合作伙伴开发的业务系统接口,需按规范与智能网关对接。其中OpenAPI是自主开发的一组公共功能组件。OpenAPI目前包含Adapter组件,该Adapter是实现屏蔽各地市(区县)的公积金接口的差异而开发的。

小程序和“我的南京”大学生版调用后端的接口能力时,需先将请求调用发给智能网关;智能网关将小程序和“我的南京”大学生版的请求转发给后端对应的业务接口,再把后端业务接口返回的结果,返回给小程序或者“我的南京”大学生版。

智能网关会对请求进行鉴权、路由、及适配接口转换等处理,处理不通过,则返回对应错误码。第三方合作伙伴的小程序,调用智能网关时,请求路径为 /thirdapi/第三方/xxx, 智能网关会将请求转发到第三方api服务。平台开发的小程序,请求路径为/api/xxx, 智能网关会将请求转发到 openapi服务。

参考文献:

[1]《国务院关于加快推进全国一体化在线政务服务平台建设的指导意见》(国发〔2018〕27号)

[2]《江苏省政府关于加快推进“互联网+”行动的实施意见》(苏政发〔2016〕46号)

[3]《关于贯彻落实<国家信息化发展战略纲要>的实施意见》(中共江苏省委办公厅,2017年4月)

[4]《江苏省政务信息系统整合共享工作实施方案》(苏政办发〔2017〕127号)

[5]《省政府办公厅关于印发进一步推进“互联网+政务服务”深化“不见面审批(服务)”改革工作方案的通知》(苏政办发〔2018〕96号)

[6]《市政府关于印发南京市数字经济发展三年行动计划(2020—2022年)的通知 》(宁政发〔2020〕46号)

1