一种弱网环境下的通信系统及方法技术方案

技术编号:37802691 阅读:7 留言:0更新日期:2023-06-09 09:32
本申请公开了一种弱网环境下的通信系统及方法,涉及计算机技术领域。该系统包括:消息发送端,用于通过第一传输协议向中转服务器发送第一消息;中转服务器,用于接收消息发送端发送的第一消息;对第一消息进行传输格式转换,得到与第二传输协议对应的第二消息;通过第二传输协议向分布式消息服务器发送第二消息;分布式消息服务器,用于接收中转服务器发送的第二消息;基于第二消息对应的第一消息主题,将第二消息发送至多个消息接收服务器中与第一消息主题对应的目标接收服务器;消息接收服务器,用于接收分布式消息服务器传递的与第二传输协议对应的消息。该系统可以在实现双向通信时保证弱网环境下的消息传输效率。通信时保证弱网环境下的消息传输效率。通信时保证弱网环境下的消息传输效率。

【技术实现步骤摘要】
一种弱网环境下的通信系统及方法


[0001]本申请涉及计算机
,特别涉及一种弱网环境下的通信系统及方法。

技术介绍

[0002]消息中间件能够利用高效可靠的消息传递机制进行数据传输,常见的消息中间件如Nats、NSQ等。由于消息中间件支持发布

订阅的消息范式,因此消息中间件可以实现双向通信,即,第一端主动向消息中间件发送消息,由消息中间件将消息转发至第二端,从而实现第一端向第二端的消息传输,第二端也可以主动将消息发送至消息中间件,由消息中间件将消息转发至第一端,从而实现第二端向第一端的消息传输。
[0003]由于消息中间件是利用可靠的消息传递机制实现的平台,即,消息中间件的数据传输是基于传输控制协议(Transmission Control Protocol,TCP)实现的,而TCP在弱网环境下存在数据传输时延高的问题,因而当消息中间件所在的消息传输场景中网络环境较差则存在消息传输效率低的问题。

技术实现思路

[0004]本申请实施例提供了一种弱网环境下的通信系统及方法,可以在实现双向通信时保证弱网环境下的消息传输效率。所述技术方案如下:
[0005]一方面,提供了一种在弱网环境下的通信系统,所述系统包括:
[0006]消息发送端,用于通过第一传输协议向中转服务器发送第一消息,所述第一消息对应第一消息主题;
[0007]所述中转服务器,用于接收所述消息发送端发送的所述第一消息;对所述第一消息进行传输格式转换,得到与第二传输协议对应的第二消息,所述第一消息和所述第二消息为表达相同消息含义的不同传输格式的消息;通过所述第二传输协议向分布式消息服务器发送所述第二消息;
[0008]所述分布式消息服务器,用于接收所述中转服务器发送的所述第二消息,所述分布式消息服务器支持对所述第二传输协议对应的消息进行处理以及双向通信;基于所述第二消息对应的所述第一消息主题,将所述第二消息发送至多个消息接收服务器中与所述第一消息主题对应的目标接收服务器;
[0009]所述消息接收服务器,用于接收所述分布式消息服务器传递的与所述第二传输协议对应的消息。
[0010]另一方面,提供了一种在弱网环境下的通信方法,所述方法由分布式消息服务器执行,所述分布式消息服务器支持对第二传输协议对应的消息进行处理以及双向通信,所述方法包括:
[0011]接收中转服务器通过所述第二传输协议发送的第二消息,所述第二消息对应第一消息主题,所述第二消息是所述中转服务器在接收到消息发送端通过第一传输协议发送的第一消息后,对所述第一消息进行传输格式转换得到的与所述第二传输协议对应的消息,
所述第一消息和所述第二消息为表达相同消息含义的不同传输格式的消息;
[0012]基于所述第二消息对应的所述第一消息主题,将所述第二消息发送至多个消息接收服务器中与所述第一消息主题对应的目标接收服务器。
[0013]另一方面,提供了一种在弱网环境下的通信方法,所述方法由中转服务器执行,所述方法包括:
[0014]接收消息发送端通过第一传输协议传输的第一消息,所述第一消息对应第一消息主题;
[0015]对所述第一消息进行传输格式转换,得到与第二传输协议传输格式对应的第二消息,所述第一消息和所述第二消息为表达相同消息含义的不同传输格式的消息,所述第二传输协议为分布式消息服务器支持的传输协议;
[0016]通过所述第二传输协议向所述分布式消息服务器发送所述第二消息,所述分布式消息服务器用于基于所述第二消息对应的所述第一消息主题,将所述第二消息发送至多个消息接收服务器中与所述第一消息主题对应的目标接收服务器,所述分布式消息服务器支持双向通信。
[0017]另一方面,提供了一种在弱网环境下的通信装置,所述装置支持对第二传输协议对应的消息进行处理以及双向通信,所述装置包括:
[0018]第一接收模块,用于接收中转服务器通过所述第二传输协议发送的第二消息,所述第二消息对应第一消息主题,所述第二消息是所述中转服务器在接收到消息发送端通过第一传输协议发送的第一消息后,对所述第一消息进行传输格式转换得到的与所述第二传输协议对应的消息,所述第一消息和所述第二消息为表达相同消息含义的不同传输格式的消息;
[0019]第一发送模块,用于基于所述第二消息对应的所述第一消息主题,将所述第二消息发送至多个消息接收服务器中与所述第一消息主题对应的目标接收服务器。
[0020]另一方面,提供了一种在弱网环境下的通信装置,所述装置包括:
[0021]第二接收模块,用于接收消息发送端通过第一传输协议传输的第一消息,所述第一消息对应第一消息主题;
[0022]转换模块,用于对所述第一消息进行传输格式转换,得到与第二传输协议传输格式对应的第二消息,所述第一消息和所述第二消息为表达相同消息含义的不同传输格式的消息,所述第二传输协议为分布式消息服务器支持的传输协议;
[0023]第二发送模块,用于通过所述第二传输协议向所述分布式消息服务器发送所述第二消息,所述分布式消息服务器用于基于所述第二消息对应的所述第一消息主题,将所述第二消息发送至多个消息接收服务器中与所述第一消息主题对应的目标接收服务器,所述分布式消息服务器支持双向通信。
[0024]另一方面,提供一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条程序代码,所述程序代码由处理器加载并执行以实现本申请实施例中任一所述的基于传输层协议的通信方法。
[0025]另一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设
备执行上述实施例中任一所述的基于传输层协议的通信方法。
[0026]本申请的提供的技术方案至少包括以下有益效果:
[0027]消息发送端和消息接收服务器之间进行消息通信时,消息发送端通过第一传输协议将消息发送至中转服务器,中转服务器将消息的传输协议从第一传输协议转换至分布式消息服务器所支持的第二传输协议传输,并通过第二传输协议将消息发送至分布式消息服务器,分布式消息服务器根据消息的消息主题将消息发送至多个消息接收服务器中与第一消息主题对应的目标接收服务器。该方法在通过分布式消息服务器实现消息发送端和消息接收服务器之间的双向通信时,即使消息发送端和消息接收服务器之间的网络环境较差因而使用了分布式消息服务器所不支持的第一传输协议,也可以通过中转服务器所提供的传输协议转换功能将第一传输协议转换至分布式消息服务器支持的第二传输协议,从而使得在通过分布式消息服务器实现消息发送端和消息接收服务器之间的双向通信时,在网络环境较差的传输场景中也能够保证消息的传输效率。
附图说明
[0028]为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种在弱网环境下的通信系统,其特征在于,所述系统包括:消息发送端,用于通过第一传输协议向中转服务器发送第一消息,所述第一消息对应第一消息主题;所述中转服务器,用于接收所述消息发送端发送的所述第一消息;对所述第一消息进行传输格式转换,得到与第二传输协议对应的第二消息,所述第一消息和所述第二消息为表达相同消息含义的不同传输格式的消息;通过所述第二传输协议向分布式消息服务器发送所述第二消息;所述分布式消息服务器,用于接收所述中转服务器发送的所述第二消息,所述分布式消息服务器支持对所述第二传输协议对应的消息进行处理以及双向通信;基于所述第二消息对应的所述第一消息主题,将所述第二消息发送至多个消息接收服务器中与所述第一消息主题对应的目标接收服务器;所述消息接收服务器,用于接收所述分布式消息服务器传递的与所述第二传输协议对应的消息。2.根据权利要求1所述的系统,其特征在于,所述分布式消息服务器,还用于获取多个消息接收服务器对应的第一主题订阅信息,所述第一主题订阅信息用于指示所述多个消息接收服务器分别对候选消息主题的订阅情况;基于所述第一主题订阅信息从所述多个消息接收服务器中确定出订阅所述第一消息主题的所述目标接收服务器。3.根据权利要求1所述的系统,其特征在于,所述消息发送端实现为代理服务器,所述系统还包括应用客户端;所述应用客户端,用于通过所述第二传输协议向所述代理服务器发送第三消息,所述第三消息和所述第一消息为表达相同消息含义的不同传输格式的消息;所述代理服务器,还用于接收所述应用客户端发送的所述第三消息;对所述第三消息进行传输格式转换,得到与所述第一传输协议对应的所述第一消息;通过所述第一传输协议向所述中转服务器发送所述第一消息;所述中转服务器,还用于接收所述代理服务器发送的所述第一消息。4.根据权利要求1至3任一所述的系统,其特征在于,所述消息接收服务器,还用于通过所述第二传输协议向所述分布式消息服务器发送第四消息,所述第四消息对应第二消息主题;所述分布式消息服务器,还用于接收所述消息接收服务器发送的所述第四消息;基于所述第四消息对应的所述第二消息主题,确定接收所述第四消息的目标消息接收端;向所述中转服务器发送所述第四消息,并指示接收所述第四消息的目标消息发送端;所述中转服务器,还用于接收所述分布式消息服务器发送的所述第四消息;对所述第四消息进行传输格式转换,得到与所述第一传输协议对应的第五消息,所述第四消息和所述第五消息为表达相同消息含义的不同传输格式的消息;通过所述第一传输协议向所述目标消息发送端发送所述第五消息;所述消息发送端,还用于接收所述中转服务器传递的与所述第一传输协议对应的消息。5.根据权利要求4所述的系统,其特征在于,
所述分布式消息服务器,还用于获取多个消息发送端对应的第二主题订阅信息,所述第二主题订阅信息用于指示所述多个消息发送端分别对候选消息主题的订阅情况;基于所述第二主题订阅信息从所述多个消息发送端中确定出订阅所述第二消息主题的所述目标消息发送端...

【专利技术属性】
技术研发人员:史敏杰
申请(专利权)人:不鸣科技杭州有限公司
类型:发明
国别省市:

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

1