一种通信方法、系统及装置制造方法及图纸

技术编号:21999804 阅读:26 留言:0更新日期:2019-08-31 05:17
本申请公开了一种通信方法,包括接收线程接收连接消息后根据所述连接消息构建连接信息并将所述连接信息发送至处理线程;所述处理线程根据所述连接信息执行相应的连接处理;当主线程调用连接建立功能或连接断开功能或消息发送功能时,所述主线程构建消息类型并触发发送线程,以使所述发送线程根据所述消息类型执行对应的异步事件;其中,所述异步事件包括连接建立事件、连接断开事件以及消息发送事件。该通信方法采用异步IO的方式进行连接建立、消息处理以及发送,能够有效释放主线程压力,保障通信性能。本申请还公开了一种通信系统、装置以及计算机可读存储介质,同样具有上述技术效果。

A Communication Method, System and Device

【技术实现步骤摘要】
一种通信方法、系统及装置
本申请涉及计算机
,特别涉及一种通信方法;还涉及一种通信系统、装置以及计算机可读存储介质。
技术介绍
ISCSI(InternetSmallComputerSystemInterface,因特网小型计算机系统接口)主要通过TCP/IP技术,将存储设备端通过ISCSItarget功能,即ISCSI目标功能,做成可以提供磁盘的服务器端,并进一步通过ISCSIinitiator功能,即ISCSI初始化用户功能做成能够挂载使用ISCSItarget的客户端,从而便可通过ISCSI协议进行磁盘的应用。也就是说,ISCSI架构主要将储存装置与使用的主机分为两个部分,分别为ISCSItarget,即储存设备端,存放磁盘或RAID的设备。ISCSIinitiator,即能够使用target的客户端,通常为服务器。客户端可通过安装ISCSIinitiator功能与target建立连接访问底层的librbd(块存储接口),实现对块存储的操作,一个target上可以映射多个块设备,同时一个target上可以创建多个target,客户端可以连接一个或多个target分别进行访问。目前,分布式tgt集群间的通信采用简单的消息收发方式,通过在接收端构建线程池处理相应的消息,而连接的建立、检测等均由主线程完成,这样极大的增加了主线程压力,导致容易发生异常。因此,如何释放主线程压力,保障系统可靠性是本领域技术人员亟待解决的技术问题。
技术实现思路
本申请的目的是提供一种通信方法,能够有效释放主线程压力,保障系统可靠性;本申请的另一目的是提供一种通信系统、装置以及计算机可读存储介质,均具有上述技术效果。为解决上述技术问题,本申请提供了一种通信方法,包括:接收线程接收连接消息后根据所述连接消息构建连接信息,并将所述连接信息发送至处理线程;所述处理线程根据所述连接信息执行相应的连接处理;当主线程调用连接建立功能或连接断开功能或消息发送功能时,所述主线程构建相应的消息类型并触发发送线程,以使所述发送线程根据所述消息类型执行对应的异步事件;其中,所述异步事件包括连接建立事件、连接断开事件以及消息发送事件。可选的,所述接收线程将所述连接信息发送至处理线程包括:所述接收线程将所述连接信息发送至所述处理线程的队列。可选的,所述接收线程将所述连接信息发送至所述处理线程的队列包括:所述接收线程基于负载均衡算法将所述连接信息发送至所述处理线程的队列。可选的,所述主线程构建相应的消息类型并触发发送线程,以使所述发送线程根据所述消息类型执行对应的异步事件,包括:所述主线程构建所述消息类型,将所述消息类型发送至所述发送线程的队列,并向所述发送线程发送提醒消息,以使所述发送线程从所述发送线程的队列中读取所述消息类型并根据所述消息类型执行对应的异步事件。可选的,还包括:当所述接收线程向所述处理线程的队列发送所述连接信息时,所述处理线程正在读取队列数据,则禁止所述接收线程向所述处理线程的队列添加所述连接信息或停止所述处理线程读取所述队列数据。为解决上述技术问题,本申请还提供了一种通信系统,包括:接收线程模块,用于接收连接消息后根据所述连接消息构建连接信息,并将所述连接信息发送至处理线程;处理线程模块,用于根据所述连接信息执行相应的连接处理;主线程模块,用于当调用连接建立功能或连接断开功能或消息发送功能时,构建相应的消息类型并触发发送线程;发送线程模块,用于根据所述消息类型执行对应的异步事件;其中,所述异步事件包括连接建立事件、连接断开事件以及消息发送事件。可选的,所述接收线程模块具体用于将所述连接信息发送至所述处理线程的队列。可选的,所述主线程模块具体用于构建所述消息类型,将所述消息类型发送至所述发送线程的队列,并向所述发送线程发送提醒消息,以使所述发送线程从所述发送线程的队列中读取所述消息类型并根据所述消息类型执行对应的异步事件。为解决上述技术问题,本申请还提供了一种通信装置,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如上述任一项所述的通信方法的步骤。为解决上述技术问题,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一项所述的通信方法的步骤。本申请所提供的通信方法,包括接收线程接收连接消息后根据所述连接消息构建连接信息,并将所述连接信息发送至处理线程;所述处理线程根据所述连接信息执行相应的连接处理;当主线程调用连接建立功能或连接断开功能或消息发送功能时,所述主线程构建相应的消息类型并触发发送线程,以使所述发送线程根据所述消息类型执行对应的异步事件;其中,所述异步事件包括连接建立事件、连接断开事件以及消息发送事件。较之于传统的通信方法,本申请所提供的通信方法,接收线程在接收连接消息后即可构建相应的连接信息并发送至处理线程进行相应的处理;发送线程在接收到主线程发送的消息类型后即可根据此消息类型执行对应的异步事件,以实现相应的功能。即本申请所提供的通信方法,连接的建立、断开以及消息的发送由接收线程与发送线程完成,而不再由主线程承担,从而有效的释放了主线程压力,保障通信性能。本申请所提供的通信系统、装置以及计算机可读存储介质,均具有上述技术效果。附图说明为了更清楚地说明本申请实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本申请实施例所提供的一种通信方法的流程示意图;图2为本申请实施例所提供的一种通信系统的示意图;图3为本申请实施例所提供的一种通信装置的示意图。具体实施方式本申请的核心是提供一种通信方法,能够有效释放主线程压力,保障系统可靠性;本申请的另一目的是提供一种通信系统、装置以及计算机可读存储介质,均具有上述技术效果。为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。目前,tgt集群中各节点的通信采用简单的消息收发方式,通过在接收端构建线程池处理相应的消息,而连接的建立、检测等均由主线程完成,这样极大的增加了主线程压力,导致容易发生异常。为此,本申请提供了一种通信方法,以释放主线程压力,保障通信性能。请参考图1,图1为本申请实施例所提供的一种通信方法的流程示意图;参考图1,该通信方法包括:S101:接收线程接收连接消息后根据连接消息构建连接信息,并将连接信息发送至处理线程;S102:处理线程根据连接信息进行相应的连接处理;具体的,在基于Libevent组件搭建的部署于Linux平台上的分布式tgt集群的通信系统的基础上,为释放主线程压力,本申请所提供的通信方法中连接的建立、消息的发送不再由主线程执行,而是采用异步IO的方式,由接收线程、发送线程以及处理线程完成。具体而言,当前节点的接收线程在接收到其他本文档来自技高网...

【技术保护点】
1.一种通信方法,其特征在于,包括:接收线程接收连接消息后根据所述连接消息构建连接信息,并将所述连接信息发送至处理线程;所述处理线程根据所述连接信息执行相应的连接处理;当主线程调用连接建立功能或连接断开功能或消息发送功能时,所述主线程构建相应的消息类型并触发发送线程,以使所述发送线程根据所述消息类型执行对应的异步事件;其中,所述异步事件包括连接建立事件、连接断开事件以及消息发送事件。

【技术特征摘要】
1.一种通信方法,其特征在于,包括:接收线程接收连接消息后根据所述连接消息构建连接信息,并将所述连接信息发送至处理线程;所述处理线程根据所述连接信息执行相应的连接处理;当主线程调用连接建立功能或连接断开功能或消息发送功能时,所述主线程构建相应的消息类型并触发发送线程,以使所述发送线程根据所述消息类型执行对应的异步事件;其中,所述异步事件包括连接建立事件、连接断开事件以及消息发送事件。2.根据权利要求1所述的通信方法,其特征在于,所述接收线程将所述连接信息发送至处理线程包括:所述接收线程将所述连接信息发送至所述处理线程的队列。3.根据权利要求2所述的通信方法,其特征在于,所述接收线程将所述连接信息发送至所述处理线程的队列包括:所述接收线程基于负载均衡算法将所述连接信息发送至所述处理线程的队列。4.根据权利要求3所述的通信方法,其特征在于,所述主线程构建相应的消息类型并触发发送线程,以使所述发送线程根据所述消息类型执行对应的异步事件,包括:所述主线程构建所述消息类型,将所述消息类型发送至所述发送线程的队列,并向所述发送线程发送提醒消息,以使所述发送线程从所述发送线程的队列中读取所述消息类型并根据所述消息类型执行对应的异步事件。5.根据权利要求4所述的通信方法,其特征在于,还包括:当所述接收线程向所述处理线程的队列发送所述连接信息时,所述处理线程正在读...

【专利技术属性】
技术研发人员:白战豪
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:江苏,32

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

1