[发明专利]一种基于数据库数据同步来实现HTTP代理的方法和系统有效

专利信息
申请号: 202011372117.4 申请日: 2020-11-30
公开(公告)号: CN112395359B 公开(公告)日: 2023-03-31
发明(设计)人: 方辉 申请(专利权)人: 武汉烽火众智数字技术有限责任公司
主分类号: G06F16/27 分类号: G06F16/27;H04L67/02
代理公司: 北京汇泽知识产权代理有限公司 11228 代理人: 代婵
地址: 430074 湖*** 国省代码: 湖北;42
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 数据库 数据 同步 实现 http 代理 方法 系统
【权利要求书】:

1.一种基于数据库数据同步来实现HTTP代理的方法,其特征在于,包括:

S100.第一网络中的Httpproxy服务器接收到终端HTTP请求,并将HTTP请求进行拆分,封装成JSON格式,写入数据库;

S200.利用网闸将第一网络中数据库写入的请求数据同步至第二网络数据库中;网闸为第一网络和第二网络的边界程序,能提供第一网络和第二网络的数据库表的同步功能;

S300.第二网络中的kafka-connect服务器检测到数据库数据变更后,将请求数据取出发布到第二网络中的kafka服务器;

S400.第二网络中的Httpproxy服务器订阅到kafka服务器的请求数据,将JSON格式的数据重新组装成HTTP请求,并将请求数据转发给目标服务器;

S500.目标服务器接收HTTP请求,根据HTTP请求,向第二网络中的Httpproxy服务器输出应答数据;

S600.第二网络中的Httpproxy服务器将应答数据拆分,并封装成JSON格式,并写入第二网络中的数据库;

S700.利用网闸将第二网络中数据库写入的应答数据同步至第一网络数据库中;

S800.第一网络中的kafka-connect服务器检测到数据变更,将应答数据提取,发布到第一网络中的kafka服务器中;

S900.第一网络中的Httpproxy服务器订阅到kafka服务器的应答数据,将JSON格式的数据重新组装成HTTP应答消息,并将请求回复给终端;

具体的,Httpproxy服务器包括Consumer模块、Session模块和Datebase适配层;其中:

Consume模块,用于订阅kafka的消息,通过标记类型区分消息是请求还是应答,并转发到Session模块处理;

Session模块,用于会话的管理,包括处理HTTP请求及应答;

Datebase适配层,用于针对各个数据库API进行封装。

2.如权利要求1的一种基于数据库数据同步来实现HTTP代理的方法,其特征在于,S100中,将HTTP请求进行拆分,封装成JSON格式,至少包括:请求URI,消息类型、消息体以及唯一ID字段。

3.如权利要求1的一种基于数据库数据同步来实现HTTP代理的方法,其特征在于,S100中,写入数据库的具体方法为:封装后JSON写入数据库表MSG字段,同时写入MSGTPYE为0,代表消息类型为请求。

4.如权利要求1的一种基于数据库数据同步来实现HTTP代理的方法,其特征在于,S400-S500中,当第二网络中的Httpproxy服务器将请求数据转发给目标服务器后,会在预设时间内判断是否收到目标服务器应答数据,若预设时间内收到目标服务器应答数据,则执行S600;若预设时间内未收到目标服务器应答数据,则流程结束。

5.如权利要求1的一种基于数据库数据同步来实现HTTP代理的方法,其特征在于,S600中,第二网络中的Httpproxy服务器将应答数据拆分,并封装成JSON格式,至少包括:状态及错误码,消息体以及请求时携带的唯一ID。

6.如权利要求1的一种基于数据库数据同步来实现HTTP代理的方法,其特征在于,S600中,写入数据库的具体方法为:写入数据库表MSG字段,同时MSGTYPE写入1,代表应答消息。

7.如权利要求1的一种基于数据库数据同步来实现HTTP代理的方法,其特征在于,S900中,在预设时间内判断第一网络中的Httpproxy服务器是否订阅到kafka服务器的应答数据,若在预设时间内,第一网络中的Httpproxy服务器未订阅到kafka服务器的应答数据,将超时错误回复给客户端,流程结束。

8.一种基于数据库数据同步来实现HTTP代理的系统,其特征在于,包括:Httpproxy服务器、kafka和kafka-connect服务器、数据库;其中:Httpproxy服务器、kafka和kafka-connect服务器、数据库都至少包含2个,分别设置于第一网络和第二网络;

Httpproxy服务器,用于接收第一网络的终端HTTP请求,并将HTTP请求进行拆分,封装成JSON格式,写入第一网络的数据库;用于订阅第二网络的kafka服务器的请求数据,将JSON格式的数据重新组装成HTTP请求,并将请求数据转发给第二网路的目标服务器;还用于接收第二网络的目标服务器应答数据,Httpproxy服务器将应答数据拆分,并封装成JSON格式,并写入第二网络中的数据库;Httpproxy服务器包括Consumer模块、Session模块和Datebase适配层;其中:

Consume模块,用于订阅kafka的消息,通过标记类型区分消息是请求还是应答,并转发到Session模块处理;

Session模块,用于会话的管理,包括处理HTTP请求及应答;

Datebase适配层,用于针对各个数据库API进行封装;

kafka-connect服务器,用于检测第二网络中的数据库数据是否变更,当数据库数据变更后,将请求数据取出发布到第二网络中的kafka服务器;还用于检测第一网络中的数据库数据是否变更,当数据库数据变更后,将应答数据取出发布到第一网络中的kafka服务器;

kafka服务器,用于和Httpproxy服务器进行信息交互,将终端的请求数据发送给第二网络的Httpproxy服务器;还用于将目标服务器的应答数据发送给第一网络的Httpproxy服务器;

数据库,通过网闸将第一网络和第二网络的数据进行同步,用于将请求数据和应答数据在第一网络和第二网络之间进行同步。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉烽火众智数字技术有限责任公司,未经武汉烽火众智数字技术有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202011372117.4/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top