当前位置: 首页 > 专利查询>度小满科技专利>正文

一种进程通信方法技术

技术编号:39660965 阅读:6 留言:0更新日期:2023-12-11 18:23
本申请提供了一种进程通信方法

【技术实现步骤摘要】
一种进程通信方法、装置、设备以及可读存储介质


[0001]本申请涉及进程通信的
,尤其涉及一种进程通信方法

装置

设备以及计算机可读存储介质


技术介绍

[0002]远程字典服务
(Remote Dictionary Server

Redis)
是一种高性能的关键值
(key

value)
存储系统,具有极高的读写性能,被广泛应用于缓存服务

分布式锁

计数器等

如何让
Redis
集群在执行分布式任务,让每个执行分布式任务的
Redis
进程节点都能成功持久化数据,是技术人员日益关注的问题


技术实现思路

[0003]本申请实施例提供一种进程通信方法

装置

设备以及可读存储介质,该方法解决了
Redis
集群在处理分布式任务的情况下,各
Redis
进程的节点都能成功数据持久化的问题

[0004]第一方面,本申请实施例提供一种进程通信方法,包括:接收第一请求消息,第一请求消息中的第一信息用于指示在
Redis
集群的
N
个目标
Redis
进程对应的内存中写入数据,第一请求消息包括第一数据,第一数据为该
N
个目标/>Redis
进程待写入的数据;在该
N
个目标
Redis
进程均满足数据写入条件的情况下,分别向这
N
个目标
Redis
进程对应的事务文件中写入第二数据,第二数据为第一数据中待写入单个目标
Redis
进程的内存中的数据;其中,每个目标
Redis
进程的事务文件中的内存地址与目标
Redis
进程的内存地址存在映射关系,在事务文件中的内存写入第二数据的情况下,目标
Redis
进程的对应内存也同步写入第二数据

[0005]在上述实施例中,
[0006]结合第一方面,在一种可能实现的方式中,分别向
N
个目标
Redis
进程对应的事务文件中写入第二数据之后,还包括:在接收到来自至少一个目标
Redis
进程的第一异常反馈消息的情况下,分别向这
N
个目标
Redis
进程发送第一回滚消息;其中,第一异常反馈消息中的第一异常反馈信息用于表征第二数据写入该目标
Redis
进程对应的内存过程中发生异常以及异常原因;第一回滚消息用于指示每个目标
Redis
进程停止将第二数据写入该目标
Redis
进程的内存,并清除其内存中已写入的第二数据

[0007]结合第一方面,在一种可能实现的方式中,分别向这
N
个目标
Redis
进程对应的事务文件中写入第二数据之前,还包括:检测是否抢锁成功;在抢锁成功的情况下,分别向这
N

Redis
进程发送第一检测消息,该第一检测消息中的第二信息用于指示目标
Redis
进程检测是否满足数据写入的条件;在接收到来自这
N
个目标
Redis
进程的反馈消息的情况下,确定这
N
个目标
Redis
进程均满足数据写入条件;其中,每条反馈消息中的第三反馈信息用于表征目标
Redis
进程具备数据写入的条件

[0008]第二方面,本申请实施例提供一种进程通信方法,应用于部署有目标
Redis
进程的
网络设备,该方法包括:接收来自路由服务进程的第一检测消息,第一检测消息中的第二信息用于指示该目标
Redis
进程检测是否满足数据写入的条件;检测该目标
Redis
进程是否满足数据写入条件;在检测为是的情况下,通过该目标
Redis
进程的事务文件将第二数据写入该目标
Redis
进程的内存中

[0009]结合第二方面,在一种可能实现的方式中,检测目标
Redis
进程是否满足数据写入条件,包括:在该
Redis
进程为主
Redis
进程,且该
Redis
进程至少在两个机房中存在从
Redis
进程,且该
Redis
进程的从
Redis
进程数据同步的延迟时间小于或等于第一时长的情况下,该
Redis
进程满足数据写入条件;在该
Redis
进程不为主
Redis
进程,或该
Redis
进程不存在从
Redis
进程
/
仅在一个机房中存在从
Redis
进程,或该
Redis
进程的从
Redis
进程数据同步的延迟时间大于第一时长的情况下,该
Redis
进程不满足数据写入条件

[0010]结合第二方面,在一种可能实现的方式中,通过目标
Redis
进程的事务文件将第二数据写入该目标
Redis
进程的内存中之后,还包括:在第二数据写入该目标
Redis
进程对应的内存过程中发生异常的情况下,向该路由服务进程发送第一异常反馈消息,该第一异常反馈消息中的第一异常反馈信息用于表征第二数据写入所述目标
Redis
进程对应的内存过程中发生异常以及异常原因;接收来自第一路由服务进程的所述第一回滚消息,该第一回滚消息用于指示目标
Redis
进程停止将第二数据写入该目标
Redis
进程的内存,并清除其对应内存中已写入的第二数据;停止将所述第二数据写入所述目标
Redis
进程对应的内存;清除所述内存中已写入的第二数据

[0011]第三方面,本申请实施例提供一种进程通信装置,该装置包括第一接收单元

第一发送单元,其中:
[0012]第一接收单元,用于接收第一请求消息,第一请求消息中的第一信息用于指示在
Redis
集群的
N
个目标
Redis
进程对应的内存中写入数据,第一请求消息包括第一数据,第一数据为该
N
个目标
Redis
进程待写入的数据;
[0013]第一发送单元,用本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.
一种进程通信方法,其特征在于,包括:接收第一请求消息,所述第一请求消息中的第一信息用于指示在
Redis
集群的
N
个目标
Redis
进程对应的内存中写入数据,所述第一请求消息包括第一数据,所述第一数据为所述
N
个目标
Redis
进程待写入的数据;在所述
N
个目标
Redis
进程均满足数据写入条件的情况下,分别向所述
N
个目标
Redis
进程对应的事务文件中写入第二数据,所述第二数据为第一数据中待写入单个目标
Redis
进程的内存中的数据;其中,每个目标
Redis
进程的事务文件中的内存地址与所述目标
Redis
进程的内存地址存在映射关系,在所述事务文件中的内存写入所述第二数据的情况下,所述目标
Redis
进程的对应内存也同步写入所述第二数据
。2.
如权利要求1所述的方法,其特征在于,所述分别向所述
N
个目标
Redis
进程对应的事务文件中写入第二数据之后,还包括:在接收到来自至少一个目标
Redis
进程的第一异常反馈消息的情况下,分别向所述
N
个目标
Redis
进程发送第一回滚消息;其中,所述第一异常反馈消息中的第一异常反馈信息用于表征第二数据写入所述目标
Redis
进程对应的内存过程中发生异常以及异常原因;所述第一回滚消息用于指示每个目标
Redis
进程停止将第二数据写入所述目标
Redis
进程的内存,并清除所述内存中已写入的第二数据
。3.
如权利要求1‑2任一项所述的方法,其特征在于,所述分别向所述
N
个目标
Redis
进程对应的事务文件中写入第二数据之前,还包括:检测是否抢锁成功;在抢锁成功的情况下,分别向所述
N

Redis
进程发送第一检测消息,所述第一检测消息中的第二信息用于指示目标
Redis
进程检测是否满足数据写入的条件;在接收到来自所述
N
个目标
Redis
进程的反馈消息的情况下,确定所述
N
个目标
Redis
进程均满足数据写入条件;其中,每条反馈消息中的第三反馈信息用于表征目标
Redis
进程具备数据写入的条件
。4.
一种进程通信方法,其特征在于,应用于部署有目标
Redis
进程的网络设备,所述方法包括:接收来自路由服务进程的第一检测消息,所述第一检测消息中的第二信息用于指示所述目标
Redis
进程检测是否满足数据写入的条件;检测所述目标
...

【专利技术属性】
技术研发人员:胡东旭陈存利
申请(专利权)人:度小满科技
类型:发明
国别省市:

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

1