(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202210461613.X
(22)申请日 2022.04.28
(71)申请人 中国电力科 学研究院有限公司
地址 100192 北京市海淀区清河小营东路
15号
申请人 国家电网有限公司
国网福建省电力有限公司电力科 学
研究院
(72)发明人 肖凯 王晓辉 刘鹏 季知祥
吴丽进 雷珊珊 谢鹏
(74)专利代理 机构 北京中巡通大知识产权代理
有限公司 1 1703
专利代理师 孟大帅
(51)Int.Cl.
H04L 67/10(2022.01)H04L 61/4511(2022.01)
H04L 67/1097(2022.01)
H04L 67/568(2022.01)
H04L 43/10(2022.01)
G06F 16/23(2019.01)
G06F 16/27(2019.01)
(54)发明名称
一种用于电力行业高并发处理的方法、 系
统、 设备及 介质
(57)摘要
本发明公开了一种用于电力行业高并发处
理的方法、 系统、 设备及介质, 所述方法包括以下
步骤: 获取并判定电力行业高并发请求是否涉及
静态资源, 若是则响应请求, 若否则通过虚拟IP
分发方式, 获得缓冲后的请求; 通过微服务进行
处理, 然后发送到分布式缓存Redis中尝试取得
数据, 若有数据则响应请求, 若没有数据则送至
消息队列Kafka, 缓冲处理后的请求输入电力行
业系统内网读写数据库, 进行分库、 分表以及读
写分离处理, 数据库更新分布式缓存并响应请
求。 本发明提供的技术方案可用于电力行业高并
发处理, 具有高性能、 高可用以及高拓展的优点。
权利要求书3页 说明书11页 附图3页
CN 114979137 A
2022.08.30
CN 114979137 A
1.一种用于电力行业高并发处 理的方法, 其特 征在于, 包括以下步骤:
通过电力行业系统外网获取待处 理的电力行业高并发请求;
判定所述电力行业高并发请求是否涉及静态资源, 若是则通过满足预设要求的CDN节
点获取资源响应所述电力行业高并发请求, 若否则通过虚拟IP分发方式, 将所述电力行业
高并发请求分发到不同的服 务器上缓冲请求, 获得缓冲后的请求;
将所述缓冲后的请求通过微服务进行处理, 获得处理后的请求; 将处理后的请求发送
到分布式缓存Redis中以取得数据, 若缓存内存在数据则返回数据并响应请求, 若缓存内不
存在数据则将处理后的请求送至消息队列Kafka进行缓冲处理, 缓冲处理后的请求输入电
力行业系统内网读写数据库, 电力行业系统内网读写数据库更新分布式缓存并响应请求。
2.根据权利要求1所述的一种用于电力行业高并发处理的方法, 其特征在于, 所述通过
虚拟IP分发方式, 将所述电力行业高并发请求分发到不同的服务器上缓冲请求, 获得缓冲
后的请求的步骤 包括:
将电力行业 高并发请求发送给域名服务器DNS, 域名服务器DNS查询到域名对应的多个
虚拟IP, 通过轮询的方式选 定虚拟IP;
将电力行业 高并发请求发送至由Keepalived绑定了所述选定虚拟IP的多台服务器上,
服务器将请求转发给Ngi nx, Nginx将请求转发给应用服 务器, 获得缓冲后的请求。
3.根据权利要求1所述的一种用于电力行业高并发处理的方法, 其特征在于, 所述将所
述缓冲后的请求 通过微服务进行处 理, 获得处 理后的请求的步骤 包括:
将所述缓冲后的请求发送至微 服务注册中心;
所述微服务注册中心将所述缓冲后的请求送至请求对应的微 服务接口进行处 理;
其中, 所述微服务注册中心记录有预设的全部微服务, 服务与服务之间采用API通讯,
应用和服 务之间通过HT TP请求应答 通信;
其中, 所述微服务注册中心中, 以心跳检测的方式检测服务的可用性; 所述微服务注册
中心中的服务按照预设逻辑分组分层; 其中, 满足预设关系的服务构建成逻辑上的组, 每个
组设置有一个用于进 行外部访问的API网关; 满足预设关系的组构建为层, 各层之 间预设有
调用关系; 所述微服务注册中心将所述缓冲后的请求送至请求对应的微服务接口进行 处理
时, 若调用链路中服务资源出现满足预设条件的不稳定状态时, 则对该服务资源的调用采
取服务降级、 服务隔离或者服务限流处理; 所述服务降级是指请求超时资源不 足时, 屏蔽服
务; 所述服务隔离是指采用线程池和信号量两种 方式来隔离请求; 所述服务限流是指通过
对并发请求进行限速或者 一个时间窗口内的请求进行限速 。
4.根据权利要求1所述的一种用于电力行业高并发处理的方法, 其特征在于, 所述将处
理后的请求送至消息队列Kafka进行缓冲处理, 缓冲处理后的请求输入电力行业系统内网
读写数据库的步骤 包括:
将处理后的请求送至消息队列Kafka;
通过消息队列Kafka对请求的操作进行削峰填谷、 解耦合和异步缓冲处理, 缓冲处理后
的请求输入电力系统内网读写数据库。
5.根据权利要求1所述的一种用于电力行业高并发处理的方法, 其特征在于, 在缓冲处
理后的请求输入电力行业系统内网读写数据库之后, 还 包括:
基于输入所述缓冲处理后的请求的电力行业系统内网读写数据库进行分库、 分表以及权 利 要 求 书 1/3 页
2
CN 114979137 A
2读写分离处 理, 电力行业系统内网读写数据库更新分布式缓存并响应请求;
其中, 所述分库包括: 基于输入缓冲处理后请求的电力系统内网读写数据库, 根据电力
业务内外部的耦合性对数据库进 行重组, 将关联度低于预设值的不同表存储在不同的数据
库中, 每个微服务单独使用一个数据库;
所述分表包括: 根据微服务的业务独立性, 将包含业务耦合数据的单表按照业务最大
化解耦规则分解成多张具有独立存储空间的实体表, 每个表均对应MYD数据文件、 .MYI索引
文件、 .frm表结构文件;
所述读写分离处理包括: 设置主数据库, 用于处理事务性增、 改、 删操作; 设置从数据
库, 用于处 理SELECT查询操作; 其中, 主数据库的数据变更同步至从数据库。
6.一种用于电力行业高并发处 理的系统, 其特 征在于, 包括:
请求获取模块, 用于通过电力行业系统外网获取待处 理的电力行业高并发请求;
一次缓冲处理模块, 判定所述电力行业高并发请求是否涉及静态资源, 若是则通过满
足预设要求的CDN节点获取资源响应所述电力行业高并发请求, 若否则通过虚拟IP分发方
式, 将所述电力行业高并发请求分发到不同的服 务器上缓冲请求, 获得缓冲后的请求;
二次缓冲处理模块, 用于将所述缓冲后的请求通过微服务进行处理, 获得处理后的请
求; 将处理后的请求 发送到分布式缓存Redis中以取得数据, 若缓存内存在数据则返回数据
并响应请求, 若缓存内不存在数据则将处理后的请求送至消息队列Kafka进 行缓冲处理, 缓
冲处理后的请求输入电力行业系统内网读写 数据库, 电力行业系统内网读写 数据库更新分
布式缓存并响应请求。
7.根据权利要求6所述的一种用于电力行业高并发处理的系统, 其特征在于, 所述二 次
缓冲处理模块中, 将处理后的请求送至消息队列Kafka进 行缓冲处理, 缓冲处理后的请求输
入电力行业系统内网读写数据库的步骤 包括:
将处理后的请求送至消息队列Kafka;
通过消息队列Kafka对请求的操作进行削峰填谷、 解耦合和异步缓冲处理, 缓冲处理后
的请求输入电力系统内网读写数据库。
8.根据权利要求6所述的一种用于电力行业高并发处理的系统, 其特征在于, 所述二 次
缓冲处理模块中, 在缓冲处 理后的请求输入电力行业系统内网读写数据库之后, 还 包括:
基于输入所述缓冲处理后的请求的电力行业系统内网读写数据库进行分库、 分表以及
读写分离处 理, 电力行业系统内网读写数据库更新分布式缓存并响应请求;
其中, 所述分库包括: 基于输入缓冲处理后请求的电力系统内网读写数据库, 根据电力
业务内外部的耦合性对数据库进 行重组, 将关联度低于预设值的不同表存储在不同的数据
库中, 每个微服务单独使用一个数据库;
所述分表包括: 根据微服务的业务独立性, 将包含业务耦合数据的单表按照业务最大
化解耦规则分解成多张具有独立存储空间的实体表, 每个表均对应MYD数据文件、 .MYI索引
文件、 .frm表结构文件;
所述读写分离处理包括: 设置主数据库, 用于处理事务性增、 改、 删操作; 设置从数据
库, 用于处 理SELECT查询操作; 其中, 主数据库的数据变更同步至从数据库。
9.一种电子设备, 其特征在于, 包括: 外网接口、 CDN节点、 服务器、 微服务服务器、 分布
式缓存Redis和电力行业系统内网读写数据库;权 利 要 求 书 2/3 页
3
CN 114979137 A
3
专利 一种用于电力行业高并发处理的方法、系统、设备及介质
安全报告 >
其他 >
文档预览
中文文档
18 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
温馨提示:本文档共18页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 思考人生 于 2024-02-24 08:49:52上传分享