基于制造技术

技术编号:39654189 阅读:6 留言:0更新日期:2023-12-09 11:23
本发明专利技术公开了基于

【技术实现步骤摘要】
基于pg连接的kdp通用内部通信连接实现方法及系统


[0001]本专利技术涉及软件系统内部通信
,具体地说是基于
pg
连接的
kdp
通用内部通信连接实现方法及系统


技术介绍

[0002]通信是现在各种软件的一个基础功能

通信过程中,不仅需要保证数据的正常传输,还要保证数据的安全性

基于数据传输和安全性,我们考察了很多数据库的连接,最终经过分析,
postgres(
英文检测为
pg)
数据库的网络通信与浪潮的
kdp
系统需要的功能相近,但是纯粹的
postgres
的连接又并不能完全符合
kdp
系统的功能,所以在了解了
postgres
的网络通信的基础上,进行了
kdp
数据库的定制化开发

整体功能上保存了
pg
原有的安全认证逻辑,在此基础上按照
kdp
的需求进行相关改造;传输时使用
pg
建立的连接进行数据通信

能够保证大小包都能够正常通信

[0003]在原有
pg
安全认证的基础上

如何实现
kdp
内部通信连接,是需要解决的技术问题


技术实现思路

[0004]本专利技术的技术任务是针对以上不足,提供基于
pg
连接的
kdp
通用内部通信连接实现方法及系统,来解决在原有
pg
安全认证的基础上

如何实现
kdp
内部通信连接的技术问题

[0005]第一方面,本专利技术一种基于
pg
连接的
kdp
通用内部通信连接实现方法,包括如下步骤:
[0006]基于
kdp
系统内部通信需求,修改
pg
连接的连接字符串,在连接字符串中添加
connType
关键字,所述
connType
关键字用于确定
kdp
通用内部通信连接的连接类型;
[0007]基于
kdp
系统内部通信的需求看,对
pg
连接的收发接口进行改进,得到两个接口,分别为接收接口和发送接口;
[0008]基于接收接口和发送接口封装
kdp
内部通信的实现流程,其中
kdp
内部通信的实现流程遵循如下规则:服务器和节点通过消息队列和
A/Bbuffer
保证通信性能,
kdp
系统内每个模块从消息队列中读取信息,服务器和节点之间的每个读写通过单独线程进行处理

[0009]作为优选,
kdp
通用内部通信连接的连接类型包括三种,分别为
pg
通用连接
、kdp
内部通信的内部连接

以及心跳感知连接

[0010]作为优选,
kdp
内部通信的实现流程包括如下:
[0011]L100、
服务器启动后,在其消息队列中注册各个模块的队列信息,并启动监听,等待客户端请求;
[0012]L200、
节点启动,在其消息队列中注册各模块的队列信息,并创建
A/Bbuffer
,通过
ConnectUri
向服务器发起连接请求;
[0013]L300、
服务器进行身份认证且认证通过后,创建处理
node
业务服务线程,所述处理
node
业务服务线程阻塞在
ReadCommand
处,直至有数据写入;
[0014]L400、
节点与服务器连接成功后,创建接收处理线程,通过接收处理线程处理服务器发送回的消息;
[0015]L500、
各模块根据
A/B buffer
选择向哪个
buffer
存储数据,当对应
buffer
达到发送门限时,通过发送接口发送数据;
[0016]L600、
服务器通过
ReadCommand
接口读取节点发送的业务请求,通过协议解析,将相关
payload
发送到其消息队列中;
[0017]L700、
消费完成服务器收到的消息队列结果后,服务器将消息队列结果发送回节点;
[0018]L800、
节点通过接收处理线程接收服务器返回的消息队列结果后,通过协议解析,将相关
payload
存储至其消息队列中;
[0019]L900、
节点通过相关线程消费其消息队列中消息;
[0020]LA00、
对于后续业务,执行步骤
L500

L900

[0021]LB00、
当节点发起断开连接时,服务器的处理
node
业务服务线程退出;
[0022]LC00、
根据业务需求,节点线程选择是否释放
A/B buffer
操作

[0023]作为优选,所述发送门限包括时间窗口和
buffer
负载

[0024]作为优选,消费完服务器接收到的消息队列结果后,服务器通过处理
node
业务服务线程获取用于连接节点的连接句柄或其它标识,基于连接句柄或其它标识

将将消息队列结果发送回节点

[0025]第二方面,本专利技术一种基于
pg
连接的
kdp
通用内部通信连接实现系统,通过如第一方面任一项所述的基于
pg
连接的
kdp
通用内部通信连接实现实现
kdp
系统内部通信,所述实现系统包括:
[0026]连接类型配置模块,所述连接类型配置模块用于基于
kdp
系统内部通信需求,修改
pg
连接的连接字符串,在连接字符串中添加
connType
关键字,所述
connType
关键字用于确定
kdp
通用内部通信连接的连接类型;
[0027]连接接口配置模块,所述连接接口配置模块用于基于
kdp
系统内部通信的需求看,对
pg
连接的收发接口进行改进,得到两个接口,分别为接收接口和发送接口;
[0028]通信流程封装模块,所述通信流程封装模块用于基于接收接口和发送接口封装
kdp
内部通信的实现流程,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种基于
pg
连接的
kdp
通用内部通信连接实现方法,其特征在于,包括如下步骤:基于
kdp
系统内部通信需求,修改
pg
连接的连接字符串,在连接字符串中添加
connType
关键字,所述
connType
关键字用于确定
kdp
通用内部通信连接的连接类型;基于
kdp
系统内部通信的需求看,对
pg
连接的收发接口进行改进,得到两个接口,分别为接收接口和发送接口;基于接收接口和发送接口封装
kdp
内部通信的实现流程,其中
kdp
内部通信的实现流程遵循如下规则:服务器和节点通过消息队列和
A/Bbuffer
保证通信性能,
kdp
系统内每个模块从消息队列中读取信息,服务器和节点之间的每个读写通过单独线程进行处理
。2.
根据权利要求1所述的基于
pg
连接的
kdp
通用内部通信连接实现方法,其特征在于,
kdp
通用内部通信连接的连接类型包括三种,分别为
pg
通用连接
、kdp
内部通信的内部连接

以及心跳感知连接
。3.
根据权利要求1或2所述的基于
pg
连接的
kdp
通用内部通信连接实现方法,其特征在于,
kdp
内部通信的实现流程包括如下:
L100、
服务器启动后,在其消息队列中注册各个模块的队列信息,并启动监听,等待客户端请求;
L200、
节点启动,在其消息队列中注册各模块的队列信息,并创建
A/Bbuffer
,通过
ConnectUri
向服务器发起连接请求;
L300、
服务器进行身份认证且认证通过后,创建处理
node
业务服务线程,所述处理
node
业务服务线程阻塞在
ReadCommand
处,直至有数据写入;
L400、
节点与服务器连接成功后,创建接收处理线程,通过接收处理线程处理服务器发送回的消息;
L500、
各模块根据
A/B buffer
选择向哪个
buffer
存储数据,当对应
buffer
达到发送门限时,通过发送接口发送数据;
L600、
服务器通过
ReadCommand
接口读取节点发送的业务请求,通过协议解析,将相关
payload
发送到其消息队列中;
L700、
消费完成服务器收到的消息队列结果后,服务器将消息队列结果发送回节点;
L800、
节点通过接收处理线程接收服务器返回的消息队列结果后,通过协议解析,将相关
payload
存储至其消息队列中;
L900、
节点通过相关线程消费其消息队列中消息;
LA00、
对于后续业务,执行步骤
L500

L900

LB00、
当节点发起断开连接时,服务器的处理
node
业务服务线程退出;
LC00、
根据业务需求,节点线程选择是否释放
A/B buffer
操作
。4.
根据权利要求3所述的基于
pg
连接的
kdp
通用内部通信连接实现方法,其特征在于,所述发送门限包括时间窗口和
buffer
负载
。5.
根据权利要求3所述的基于
pg
连接的
kdp
通用内部通信连接实现方法,其特征在于,消费完服务器接收到的消息队列结果后,服务器通过处理
node
业务服务线程获取用于连接节点的连接句柄或其它标识,基于连接句柄或其它标识

将将消息队列结果发送回节点
。6.
一种基于
pg
连接的
kdp
通用内部通信连接实现系统,其特征在于,用于通过如权利要求1‑5任一项所述的...

【专利技术属性】
技术研发人员:吴智勇
申请(专利权)人:上海沄熹科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1