[发明专利]去中心微服务化区域洪水预警水信息系统及其集成方法有效
申请号: | 202010253717.2 | 申请日: | 2020-04-02 |
公开(公告)号: | CN111488420B | 公开(公告)日: | 2020-12-18 |
发明(设计)人: | 邹磊;沈建明 | 申请(专利权)人: | 中国科学院地理科学与资源研究所 |
主分类号: | G06F16/29 | 分类号: | G06F16/29;G06F16/215;G06F16/25;G06F9/455;G06F21/60;G06Q10/04;G06Q50/26 |
代理公司: | 北京国林贸知识产权代理有限公司 11001 | 代理人: | 李瑾;李连生 |
地址: | 100101 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 中心 微服 区域 洪水 预警 信息系统 及其 集成 方法 | ||
1.一种去中心微服务化区域洪水预警信息系统,其特征在于:包括数据采集层、数据集成层、微服务层、服务注册中心集群、API Gateway集群、终端用户层六个部分;
所述数据采集层:通过物联网、互联网以及移动通信技术采集各种传感器监控的实时水信息数据;
所述数据集成层:包括洪水预警数据库的关系数据库和非关系数据库,定义并持久化存储了用户管理数据、实时水信息数据、模型信息数据和空间数据四类数据;所述用户管理数据包括用户名、密码、授权权限数据;所述实时水信息数据包括水位数据、流量数据、降雨数据;所述空间数据包括行政区划信息和地理数据信息;所述模型信息数据包括构建和执行洪水预报模型所需的流域信息数据和模型参数数据;
所述微服务层:由五种不同功能的微服务组件构成,五种微服务分别为:数据处理微服务、数据引擎微服务、洪水预警微服务、洪水地图展示微服务、用户权限微服务;数据引擎微服务提供关系数据库与非关系数据库的统一连接接口,其它微服务通过数据引擎微服务访问洪水预警数据库,获取查询数据、存储数据和预报洪水数据信息,并获取洪水预报模型的模型参数; 各个微服务通过REST协议与服务注册中心通信,且定时向服务注册中心发送心跳进行健康检查;
所述服务注册中心集群:分别与API Gateway集群和微服务层中的各个微服务通信,且存储微服务元数据信息;是采用P2P的一致性Chord环结构,建立类路由表存储信息,在每个节点上保存集群中的部分微服务元数据信息;
所述API Gateway集群:是基于Nginx二次模块提供客户访问接口;
所述终端用户层:为笔记本、移动设备提供交互式Web应用程序界面;
数据采集层采集数据存入数据集成层中;客户从笔记本、移动设备启动API从客户访问接口进入所述系统,在用户权限微服务中通过权限验证后,在微服务层通过数据引擎微服务完成数据信息的查找,然后通过所述终端用户层在笔记本、移动设备上展示。
2.根据权利要求1所述的去中心微服务化区域洪水预警信息系统,其特征在于:所述关系数据库包括POSTGRES和MYSQL数据库,所述非关系数据库包括HABSE和CASSANDRA。
3.根据权利要求2所述的去中心微服务化区域洪水预警信息系统,其特征在于:所述CASSANDRA数据库储存实时水信息数据;所述POSTGRES数据库储存空间数据;所述MYSQL数据库储存用户管理数据及构建和执行洪水预报模型所需的模型参数数据;所述HABSE数据库储存构建和执行洪水预报模型所需的流域信息数据。
4.根据权利要求1所述的去中心微服务化区域洪水预警信息系统,其特征在于:微服务层中:
所述用户权限微服务实现平台个人账号的注册、平台登录、个人信息修改、浏览邮件、注销/退出系统;
所述数据处理微服务完成采集的数据缺失值插补、异常值清理、同化处理;
所述洪水预警微服务基于分布式水文模型和二维水动力学模型自动运行并把模型运行结果插入到数据库中,所述模型运行结果即淹没区域及淹没深度的预测信息;
所述洪水地图展示微服务基于WebGIS技术将数据库中淹没区域及淹没深度信息以GIS地图即时展示;
所述数据引擎微服务实现了关系数据库与非关系数据库的统一的连接接口;通过Thrift协议建立IConnection与IDatastore两个抽象接口,不同的数据库继承IConnection与IDatastore并实现数据库连接、数据查询和数据插入与更新功能,为了空间数据的快速查询扩展了ISpatialDatastore接口,通过RTree索引实现空间数据的快速检索;其它微服务通过数据引擎微服务访问洪水预警数据库,获取查询数据、存储数据和预报洪水数据信息,并获取洪水预报模型的模型参数。
5.权利要求1所述的去中心微服务化区域洪水预警信息系统的集成方法,其特征在于:包括以下工作步骤:
实时水信息数据的采集处理:通过数据采集处理装置实现,所述数据采集处理装置包括任务抓取器、任务调度器和ETL服务器三个部分;任务抓取器在数据采集层抓取实时水信息数据并上传到微服务层的数据处理微服务中;数据处理微服务采用分布式Pipe技术ETL服务器进行海量实时数据的传输,并在Pipe中实现不同的Interceptor进行数据清洗同化处理;最后得到数据存储到数据集成层的非关系数据库数据库中,可用于洪水预警微服务,及洪水地图展示微服务,支撑用户交互式即时查询;任务调度器根据传感器监测的信号间隔,定时启动抓取任务;
微服务的发现与注册:服务注册中心集群完成微服务的发现与注册,存储微服务注册的基本信息;所有的微服务到服务中心进行测试,定时向服务注册中心发送心跳进行健康检查,默认时间间隔阈值发送一次心跳,表明服务一直在健康运行;服务注册中心连续3个时间间隔阈值内没有接收到微服务发送的心跳状态,则从列表中剔除服务信息;剔除后的服务信息放到一个故障列表中,服务注册中心每隔2个时间间隔阈值重新检测故障列表中的服务是否恢复,若恢复,从故障列表中再次添加到服务列表中,若3次检测仍然未回来,彻底清除;
微服务的工作与通信:当每个微服务启动时,先把服务基本信息在服务注册中心集群进行注册;当服务间或对外调用时,先从服务注册中心集群发现已注册的微服务基本信息再通信调用;功能微服务与服务注册中心集群通信使用基于请求/响应的同步通信模式的Thrift协议进行通信,功能微服务之间通过HTTP协议REST进行通信;微服务层中每个微服务运行在Docker容器里面;
洪水预警微服务的实现:洪水预警微服务由水文水动力耦合模型构成,洪水预警微服务实施主要包括4步:第一步,根据流域信息数据将流域划分为格网或者子流域;第二步,将模型参数数据输入到二维水动力学模型中,生成洪水淹没深度数据;第三步,将生成的洪水淹没深度数据以及历史暴雨事件的降雨数据作为训练数据,分别建立提前预警的机器学习模型,并把获取的参数插入到数据库中;第四步,读取实时水信息数据输入到模型中,获取未来洪水淹没深度地图,并存储到数据库;洪水地图展示微服务由API构成的交互式地图,用户登录系统后,经过权限验证后,浏览该流域的洪水地图并且鼠标可以点击查看淹没深度;
API服务:当API Gateway集群执行终端用户请求时,首先从服务注册中心发现用户权限微服务并验证用户对将要访问的微服务是否有访问权限,若无权限,返回提示信息,若有权限则查找API Gateway的缓存目录对应信息,若缓存目录中存在对应信息,读取信息返回给用户,若缓存中无信息,然后再向注册中心查找要访问微服务的地址,最后访问微服务获取信息并将信息进行缓存,再返回给用户。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院地理科学与资源研究所,未经中国科学院地理科学与资源研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010253717.2/1.html,转载请声明来源钻瓜专利网。