消息发送方法、装置、消息处理设备、服务器以及存储介质制造方法及图纸

技术编号:25230491 阅读:15 留言:0更新日期:2020-08-11 23:17
本申请提供了一种消息发送方法、装置、消息处理设备、服务器以及存储介质,属于信息处理技术领域,用于解决相关技术中消息并发导致的消息处理设备卡顿的问题。所述方法包括:通过所述多条消息发送通道中处于空闲状态的第一消息发送通道,向所述消息处理设备进行本次消息发送;在未接收到所述消息处理设备返回的对本次所发送的消息的确收响应时,通过所述多条消息发送通道中处于空闲状态的第二消息发送通道,向所述消息处理设备进行下一次消息发送,所述第二消息发送通道与所述第一消息通道不同。

【技术实现步骤摘要】
消息发送方法、装置、消息处理设备、服务器以及存储介质
本申请涉及信息处理
,特别是涉及一种消息发送方法、装置、消息处理设备、服务器以及存储介质。
技术介绍
随着互联网经济的发展,越来越多的商户配置有消息处理设备(例如:收银设备),通过在服务器和消息处理设备之间建立的单个消息传输通道,接收服务器向消息处理设备发送的消息,并且当服务器接收到新消息时,都会向消息处理设备发送新消息,并再次向消息处理设备发送当前未被确认的消息,每接收一次新消息,就向消息处理设备进行一次消息发送。由此将造成如下现象:当服务器将消息发送到消息处理设备时,可能发生多条消息串联重复发送的情况,例如,服务器刚通过消息发送通道,将消息1发送给消息处理设备,就收到消息2,而此时并没有收到由消息处理设备返回的关于消息1的确认回执,因此,服务器又会立即通过消息发送通道,向消息处理设备发送消息1、2,当未接收到关于消息1和消息2的确认回执时,服务器又收到消息3,又立即通过消息发送通道,向消息处理设备投递消息1、2、3,从而在极端情况下,将出现上百条消息的串联重复发送。而中小商户为了节省成本,所采用的消息处理设备的硬件配置较低,导致消息处理的能力较差,当接收多过的由服务器发出的上百条串联重复发送的消息时,消息处理设备将无法在短时间内完成上百条消息的处理,进而出现极其严重的卡顿现象,降低了消息处理设备的用户使用体验。
技术实现思路
为了解决上述问题,本申请提供了一种消息发送方法、装置、消息处理设备、服务器以及存储介质,旨在解决消息处理设备卡顿的现象,优化用户的使用体验。根据本公开实施例的第一方面,提供了一种消息发送方法,应用于服务器,所述服务器与消息处理设备通过多条消息发送通道通信连接,所述方法包括:通过所述多条消息发送通道中处于空闲状态的第一消息发送通道,向所述消息处理设备进行本次消息发送;在未接收到所述消息处理设备返回的对本次所发送的消息的确收响应时,通过所述多条消息发送通道中处于空闲状态的第二消息发送通道,向所述消息处理设备进行下一次消息发送,所述第二消息发送通道与所述第一消息通道不同。根据本公开实施例的第二方面,提供了一种消息发送方法,应用于消息处理设备,所述消息处理设备与服务器通过多条消息发送通道通信连接,所述方法包括:从所述多条消息发送通道中确定当前处于空闲状态的第一目标消息发送通道;在接收到所述服务器通过所述第一目标消息发送通道所发送的第一目标消息时,通过所述目标消息通道向所述服务器返回对所述第一目标消息的确收响应。根据本公开实施例的第三方面,提供了一种消息发送装置,应用于服务器,所述服务器与消息处理设备通过多条消息发送通道通信连接,所述装置包括:第一发送模块,用于通过所述多条消息发送通道中处于空闲状态的第一消息发送通道,向所述消息处理设备进行本次消息发送;第二发送模块,用于在未接收到所述消息处理设备返回的对本次所发送的消息的确收响应时,通过所述多条消息发送通道中处于空闲状态的第二消息发送通道,向所述消息处理设备进行下一次消息发送,所述第二消息发送通道与所述第一消息通道不同。可选地,所述装置还包括:第一更新模块,用于将所述第一消息发送通道的状态更新为占用状态;第二更新模块,用于在接收到所述消息处理设备返回的对本次所发送的消息的确收响应时,将所述第一消息发送通道的状态更新为空闲状态,以用于下一次消息发送。可选地,所述装置还包括:第一初始化模块,用于在接收到所述消息处理设备发送的连接请求时,响应于所述连接请求,将所述多条消息发送通道的状态均初始化为空闲状态;第一检测模块,用于自初始化时刻起,每次接收到所述消息处理设备发送的心跳消息时,检测是否存在待发送消息;所述第一发送模块,包括:第一发送子模块,用于在检测到存在待发送消息时,将所述待发送消息作为本次消息发送的对象,通过所述第一消息发送通道,向所述消息处理设备进行本次消息发送。可选地,所述装置还包括:第三发送模块,用于在检测到存在待发送消息时,向所述消息处理设备发送重置提示,以提示所述消息处理设备重置用于发送心跳消息的预设时间间隔序列。可选地,所述装置还包括:第一确定模块,用于根据所述消息处理设备的硬件参数值,确定所述多条消息发送通道的数量,其中,所述硬件参数值至少包括:CPU核数和主频。可选地,所述第一确定模块包括:第一确定子模块:用于按照以下公式确定所述多条消息发送通道的数量;其中,N表示所述多条消息发送通道的数量,且为大于等于1的整数。根据本公开实施例的第四方面,提供了一种消息发送装置,应用于消息处理设备,所述消息处理设备与服务器通过多条消息发送通道通信连接,所述装置包括:第二确定模块,用于从所述多条消息发送通道中确定当前处于空闲状态的第一目标消息发送通道;返回确收响应模块,用于在接收到所述服务器通过所述第一目标消息发送通道所发送的第一目标消息时,通过所述目标消息通道向所述服务器返回对所述第一目标消息的确收响应。可选地,所述装置还包括:第四发送模块,用于向所述服务器发送连接请求,所述连接请求携带所述消息处理设备的硬件参数值,以确定所述多条消息发送通道的数量,其中,所述硬件参数值至少包括:CPU核数和主频。可选地,所述装置还包括:第五发送模块,用于自发送所述连接请求的发送时刻起,按照预设时间间隔序列,向所述服务器发送心跳消息,所述预设时间间隔序列至少包括:两种不同时长的时间间隔。可选地,所述装置还包括:第三确定模块,用于确定最小时长的时间间隔和最大时长的时间间隔,以得到所述至少两种不同时长的时间间隔;第四确定模块,用于确定每种时长的时间间隔的重复次数和相邻两个时间间隔的步长,以得到所述预设时间间隔序列。可选地,所述装置还包括:第二检测模块,用于在按照预设时间间隔序列,向所述服务器发送心跳消息期间,检测是否接收到所述服务器发送的重置提示和/或所述服务器通过当前处于空闲状态的第二消息发送通道所发送的第二目标消息;重置模块,用于在接收到所述重置提示和/或所述第二目标消息时,重置所述预设时间间隔序列;第六发送模块,用于自重置时刻起,按照重置后的预设时间间隔序列,向所述服务器发送心跳消息。根据本公开实施例的第五方面,提供了一种服务器,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行以实现如上述第一方面中任一项所述的消息发送方法所执行的操作。根据本公开实施例的第六方面,提供了一种非临时性计算机可读存储介质,当所述存储介质中的指令由服务器的处理器执行时,使得服务器能够执行一种以实现如上述第一方面中任一项所述的消息发送方法所执行的操作。根据本公开实施例的第七方面,提供了一种消息处理设备,包括:处理器;用于存储所述处理本文档来自技高网...

【技术保护点】
1.一种消息发送方法,其特征在于,应用于服务器,所述服务器与消息处理设备通过多条消息发送通道通信连接,所述方法包括:/n通过所述多条消息发送通道中处于空闲状态的第一消息发送通道,向所述消息处理设备进行本次消息发送;/n在未接收到所述消息处理设备返回的对本次所发送的消息的确收响应时,通过所述多条消息发送通道中处于空闲状态的第二消息发送通道,向所述消息处理设备进行下一次消息发送,所述第二消息发送通道与所述第一消息通道不同。/n

【技术特征摘要】
1.一种消息发送方法,其特征在于,应用于服务器,所述服务器与消息处理设备通过多条消息发送通道通信连接,所述方法包括:
通过所述多条消息发送通道中处于空闲状态的第一消息发送通道,向所述消息处理设备进行本次消息发送;
在未接收到所述消息处理设备返回的对本次所发送的消息的确收响应时,通过所述多条消息发送通道中处于空闲状态的第二消息发送通道,向所述消息处理设备进行下一次消息发送,所述第二消息发送通道与所述第一消息通道不同。


2.根据权利要求1所述的消息发送方法,其特征在于,在通过所述多条消息发送通道中处于空闲状态的第一消息发送通道,向所述消息处理设备进行本次消息发送之后,所述方法还包括:
将所述第一消息发送通道的状态更新为占用状态;
在接收到所述消息处理设备返回的对本次所发送的消息的确收响应时,将所述第一消息发送通道的状态更新为空闲状态,以用于下一次消息发送。


3.根据权利要求1所述的消息发送方法,其特征在于,在通过所述多条消息发送通道中处于空闲状态的第一消息发送通道,向所述消息处理设备进行本次消息发送之前,所述方法还包括:
在接收到所述消息处理设备发送的连接请求时,响应于所述连接请求,将所述多条消息发送通道的状态均初始化为空闲状态;
自初始化时刻起,每次接收到所述消息处理设备发送的心跳消息时,检测是否存在待发送消息;
通过所述多条消息发送通道中处于空闲状态的第一消息发送通道,向所述消息处理设备进行本次消息发送,包括:
在检测到存在待发送消息时,将所述待发送消息作为本次消息发送的对象,通过所述第一消息发送通道,向所述消息处理设备进行本次消息发送。


4.根据权利要求3所述的消息发送方法,其特征在于,在检测是否存在待发送消息之后,还包括:
在检测到存在待发送消息时,向所述消息处理设备发送重置提示,以提示所述消息处理设备重置用于发送心跳消息的预设时间间隔序列。


5.根据权利要求1-4任一所述的消息发送方法,其特征在于,在通过所述多条消息发送通道中处于空闲状态的第一消息发送通道之前,所述方法还包括:
根据所述消息处理设备的硬件参数值,确定所述多条消息发送通道的数量,其中,所述硬件参数值至少包括:CPU核数和主频。


6.根据权利要求5所述的消息发送方法,其特征在于,根据所述消息处理设备的硬件参数值,确定所述多条消息发送通道的数量,包括:
按照以下公式确定所述多条消息发送通道的数量;



其中,N表示所述多条消息发送通道的数量,且为大于等于1的整数。


7.一种消息发送方法,其特征在于,应用于消息处理设备,所述消息处理设备与服务器通过多条消息发送通道通信连接,所述方法包括:
从所述多条消息发送通道中确定当前处于空闲状态的第一目标消息发送通道;
在接收到所述服务器通过所述第一目标消息发送通道所发送的第一目标消息时,通过所述目标消息通道向所述服务器返回对所述第一目标消息的确收响应。


8.根据权利要求7所述的方法,其特征在于,在从所述多条消息发送通道中确定当前处于空闲状态的第一目标消息发送通道之前,所述方法还包括:
向所述服务器发送连接请求,所述连接请求携带所述消息处理设备的硬件参数值,以确定所述多条消息发送通道的数量,其中,所述硬件参数值至少包括:CPU核数和主频。


9.根据权利要求8所述的方法,其特征在于,在向所述服务器发送连接请求之后,所述方法还包括:
自发送所述连接请求的发送时刻起,按照预设时间间隔序列,向所述服务器发送心跳消息,所述预设时间间隔序列至少包括:两种不同时长的时间间隔。


10.根据权利要求9所述的方法,其特征在于,在按照预设时间间隔序列,向所述服务器发送心跳消息之前,所述方法还包括:
确定最小时长的时间间隔和最大时长的时间间隔,以得到所述至少两种不同时长的时间间隔;
确定每种时长的时间间隔的重复次数和相邻两个时间间隔的步长,以得到所述预设时间间隔序列。


11.根据权利要求9或10所述的方法,其特征在于,所述方法还包括:
在按照预设时间间隔序列,向所述服务器发送心跳消息期间,检测是否接收到所述服务器发送的重置提示和/或所述服务器通过当前处于空闲状态的第二消息发送通道所发送的第二目标消息;
在接收到所述重置提示和/或所述第二目标消息时,重置所述预设时间间隔序列;
自重置时刻起,按照重置后的预设时间间隔序列,向所述服务器发送心跳消息。


12.一种消息发送装置,其特征在于,应用于服务器,所述服务器与消息处理设备通过多条消息发送通道通信连接,所述装置包括:
第一发送模块,用于通过所述多条消息发送通道中处于空闲状态的第一消息发送通道,向所述消息处理设备进行本次消息发送;
第二发送模块,用于在未接收到所述消息处理设备返回的...

【专利技术属性】
技术研发人员:曹桂锋
申请(专利权)人:北京三快在线科技有限公司
类型:发明
国别省市:北京;11

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

1