一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于多层动态网关的社区微服务云平台架构方法与流程

2022-07-06 10:35:21 来源:中国专利 TAG:


1.本发明涉及一种基于多层动态网关的社区微服务云平台架构方法,属于社区管理系统领域。


背景技术:

2.随着社会经济的高速发展和我国城镇化进程的加快,城市人口日趋密集,居住环境的舒适性和安全性已经成为人们居住首选,无论是老旧的社区改造还是新建立的小区,社区智慧化已经作为智慧城市中不可或缺的一部分。目前现有的智慧社区社区平台综合服务系统中均包括智慧物联、安防监控、养老服务、物业管理、停车交通、党建信息、人口数据、金融服务、行政审批等等各类不同领域分系统,该综合服务系统需要整合各种信息技术、数据存储、基础设施服务等各类载体,在请求量较大时,往往无法满足在进行大批量处理请求的同时,使系统依然具备较高的计算实时性;在老旧的社区改造时,为避免重复开发浪费资源,有时还需要综合服务系统兼容原有旧小区中已经开发部署过的老旧系统。


技术实现要素:

3.本发明为解决上述现有技术中存在的问题,提供了一种基于多层动态网关的社区微服务云平台架构方法,本方法能够提高系统在高并发性访问时的处理能力,根据实际访问情况均衡平台负载,保证了在处理高并发请求时系统计算的实时性,而且本方法能够兼容已经开发部署过的老旧系统,避免了重复投资所浪费的资源。
4.为实现上述目的,本发明提供的技术方案为:一种基于多层动态网关的社区微服务云平台架构方法,至少包括用于处理用户请求的访问层和社区层,其中社区层中包括相互独立的,与实际社区一一对应的社区子系统,所述用户请求的数据结构至少包括请求头信息和数据段,其中请求头信息中至少包含请求类型、用户发送请求所使用的平台和用户所需访问的社区;
5.所述访问层至少包括用于分类处理用户请求的一级反向代理组件、用于储存数据的数据湖组件、用于将数据上传至第三方平台的统一对接组件、用于将用户请求发送至社区大屏的大屏组件和用于将用户请求转发至社区层的二级动态代理组件;所有用户发送的用户请求均存储在数据湖组件中,一级反向代理组件根据用户请求头信息,将存储于数据湖中的用户请求分为上传请求、大屏请求和社区请求,其中上传请求通过统一对接组件,将上传请求中的数据段信息上传至第三方平台,大屏请求通过大屏组件,将大屏请求中的数据段信息发送至与实际社区相对应的大屏幕上,社区请求被发送至二级动态代理组件进行处理,二级动态代理组件首先根据社区请求的请求头信息,判定用户所需访问的社区,并获取在二级动态代理组件中预存的该社区实际业务ip和端口信息,将该社区的实际业务ip及端口信息增加至请求头中后,再将社区请求代理转发至社区层的对应子系统中进行后续处理;
6.社区层通过访问控制接口与其中的社区子系统进行连接,其中每个社区子系统至
少包括用于支撑社区子系统整体框架的基础子系统模块和用于实现社区实际需求的业务子系统模块,针对不同社区的实际需求,在业务子系统模块中搭配有不同功能的微服务模块。
7.所述的一级反向代理组件根据请求头中的请求类型信息对用户请求进行分类:
8.当请求头信息中的请求类型为上传请求时,一级反向代理组件将用户请求中的数据段通过数据抽取的方式存储在数据湖组件中,并等待接收统一对接组件将其上传至第三方平台;
9.当请求头信息中的请求类型为大屏请求时,一级反向代理组件将用户请求发送至大屏组件,由大屏组件根据用户请求信息将数据段信息发送至与实际社区相对应的大屏幕上进行显示操作;
10.当请求头信息中的请求类型为社区请求时,一级反向代理组件将用户请求转发至二级动态代理组件,由二级动态代理组件进行后续处理。
11.二级动态代理组件处设有网关gateway组件,当用户请求到达网关gateway组件时,由网关gateway组件对请求头进行token验证,并且在用户请求处理结束后,对客户端发送返回值response时,在返回值response中内加入token验证的公钥,做到验证用户访问与实际社区子系统业务无关。
12.基础子系统模块中至少包括用于支持在不同平台运行的平台组件、用于管理微服务模块注册及配置信息的注册中心组件、用于处理缓存信息的信息中间件以及用于限制系统信息流量的限流组件。
13.信息中间件至少包括用于各子系统之间异步调用的消息中间件,和用于缓存图像、视频等非结构化数据信息的图像中间件和视频中间件,其中消息中间件采用基于开源的artemis mq中间件,图像中间件采用fdfs开源组件,视频中间件采用hbase开源组件。
14.注册中心组件为基于nacos架构的服务注册及配置中心,通过录入微服务模块的服务名、实际业务ip和端口信息,并就录入的信息预存在二级动态代理组件中,以保证统一管理各类微服务模块,动态配置信息。
15.二级动态代理组件通过将社区请求根据服务端口信息发送给特定的业务子系统的动态路由方式,将社区请求代理到不同社区业务集群内。
16.限流组件基于sentienl组件,通过实时控制及预控制的方式,对单个社区子系统的访问控制接口进行接口限流操作。
17.微服务模块中包含有用于将系统功能以接口方式发布出来的接口适配层,接口适配层中的实际业务ip和端口信息注册在注册中心组件中,接口适配层中还包含有针对用户信息增加token校验规则,将微服务模块添加至业务子系统中的具体方法为:
18.1)在微服务模块后端增加接口适配层,该层将微服务模块的功能以接口方式发布出来,并注册到注册中心组件中;
19.2)在适配层针对用户信息增加token校验规则,保持与整体系统架构一致性;
20.3)将该系统部署所在的实际业务ip及端口信息加入到二级动态代理组件中进行转发。
21.根据上述技术方案可知,本发明提供的基于多层动态网关的社区微服务云平台架构方法,通过一级反向代理组件对用户所发送的请求进行初步分流处理,分流后一部分可
直接处理的请求,直接交由特定组件进行处理,其余需要进一步处理的社区请求交由二级动态代理组件进行动态代理,二级动态组件根据请求信息的不同,将用户请求转发至社区层中指定的社区子系统中进行处理。由于本方法对用户请求进行分级处理,对用户请求进行层层分流,减小了同一时间段内的用户请求处理量,业务子系统根据请求的具体信息决定由特定的子系统进行应答处理服务,所以本方法能够实现高并发情况下的用户请求处理,提高了系统在高并发性访问时的处理能力,并根据实际访问情况均衡平台负载,保证了在处理高并发请求时系统计算的实时性,而且由于在本方法业务子系统的微服务模块中包含有用于将系统功能以接口方式发布出来的接口适配层,接口适配层中的实际业务ip和端口信息注册在注册中心组件中,待改造的老旧系统通过接口适配层将系统功能接入业务子系统中,所以本方法能够能够兼容已经开发部署过的老旧系统,避免了重复投资所浪费的资源。
附图说明
22.图1系统架构结构图;
23.图2系统流程图。
24.具体实施方法
25.下面结合附图和具体实施例对本发明作详细具体的说明,但本发明的保护范围不限于下述的实施例。
26.在本发明所提供的基于多层动态网关的社区微服务云平台架构方法,其系统架构图如图1所示,至少包括用于处理用户请求的访问层和社区层,其中社区层中包括相互独立的,与实际社区一一对应的社区子系统,所述用户请求的数据结构至少包括请求头信息和数据段,其中请求头信息中至少包含请求类型、用户发送请求所使用的平台和用户所需访问的社区;
27.所述访问层至少包括用于分类处理用户请求的一级反向代理组件、用于储存数据的数据湖组件、用于将数据上传至第三方平台的统一对接组件、用于将用户请求发送至社区大屏的大屏组件和用于将用户请求转发至社区层的二级动态代理组件;所有用户发送的用户请求均存储在数据湖组件中,目前采用hive作为大数据的数据仓库组件。
28.一级反向代理组件根据用户请求头信息中的请求类型信息,将存储于数据湖中的用户请求分为上传请求、大屏请求和社区请求,对于功能相对简单但是实时性要求高的一级反向代理组件采用nginx进行部署。具体分类方法如下:
29.当请求头信息中的请求类型为上传请求时,一级反向代理组件将用户请求中的数据段通过数据抽取的方式存储在数据湖组件中,并等待接收统一对接组件将其上传至第三方平台;
30.当请求头信息中的请求类型为大屏请求时,一级反向代理组件将用户请求发送至大屏组件,由大屏组件根据用户请求信息将数据段信息发送至与实际社区相对应的大屏幕上进行显示操作;
31.当请求头信息中的请求类型为社区请求时,一级反向代理组件将用户请求转发至二级动态代理组件,由二级动态代理组件进行后续处理。
32.上传请求通过统一对接组件,将上传请求中的数据段信息上传至第三方平台,统
一对接组件采用rest方式与公安、政府等第三方平台进行数据对接,将待上报数据事先通过数据抽取的方式存储在访问层的数据仓库中。大屏请求通过大屏组件,将大屏请求中的数据段信息发送至与实际社区相对应的大屏幕上,社区请求被发送至二级动态代理组件进行处理,二级动态代理组件首先根据社区请求的请求头信息,判定用户所需访问的社区,并获取在二级动态代理组件中预存的该社区实际业务ip和端口信息,将该社区的实际业务ip及端口信息增加至请求头中后,再将社区请求代理转发至社区层的对应子系统中进行后续处理。
33.二级动态代理组件处还设有网关gateway组件,当用户请求到达网关gateway组件时,由网关gateway组件对请求头进行token验证,并且在用户请求处理结束后,对客户端发送返回值response时,在返回值response中内加入token验证的公钥,做到验证用户访问与实际社区子系统业务无关。
34.社区层通过访问控制接口与其中的社区子系统进行连接,其中每个社区子系统至少包括用于支撑社区子系统整体框架的基础子系统模块和用于实现社区实际需求的业务子系统模块,针对不同社区的实际需求,在业务子系统模块中搭配有不同功能的微服务模块。在实际部署中,业务子系统模块至少包括智慧停车子系统、党政信息子系统、闸机门禁子系统、智慧物业子系统、安防监控子系统、养老政务子系统和工单处理子系统中的一个或多个子系统。
35.社区子系统采用存储共享方式部署数据组件,做到数据社区层面隔离,以社区为单位对业务数据进行统计分析;最上层的访问层统计分析采用大数据架构再次进行数据融合汇总计算,做到二级计算实时性,一级大数据可根据需求变化统计。
36.基础子系统模块中至少包括用于支持在不同平台运行的平台组件、用于管理微服务模块注册及配置信息的注册中心组件、用于处理缓存信息的信息中间件以及用于限制系统信息流量的限流组件。
37.信息中间件至少包括用于各子系统之间异步调用的消息中间件,和用于缓存图像、视频等非结构化数据信息的图像中间件和视频中间件,其中消息中间件采用基于开源的artemis mq中间件,图像中间件采用fdfs开源组件,视频中间件采用hbase开源组件。
38.注册中心组件为基于nacos架构的服务注册及配置中心,通过录入微服务模块的服务名、服务ip、服务端口等信息,统一管理各类微服务模块,动态配置信息。
39.上述的二级动态代理组件通过将社区请求根据服务端口信息发送给特定的业务子系统的动态路由的方式,将社区请求代理到不同社区业务集群内。
40.限流组件基于sentienl组件,通过实时控制及预控制的方式,对单个社区子系统的访问控制接口进行接口限流操作。
41.微服务模块中包含有用于将系统功能以接口方式发布出来的接口适配层,接口适配层中的实际业务ip和端口信息注册在注册中心组件中,接口适配层中还包含有针对用户信息增加token校验规则,将微服务模块添加至业务子系统中的具体方法为:
42.1)在微服务模块后端增加接口适配层,该层将微服务模块的功能以接口方式发布出来,并注册到注册中心组件中;
43.2)在适配层针对用户信息增加token校验规则,保持与整体系统架构一致性;
44.3)将该系统部署所在的实际业务ip及端口信息加入到二级动态代理组件中进行
转发。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献