CN109445969A - 一种分布式tgt节点间的通信方法、装置及设备 - Google Patents
一种分布式tgt节点间的通信方法、装置及设备 Download PDFInfo
- Publication number
- CN109445969A CN109445969A CN201811475932.6A CN201811475932A CN109445969A CN 109445969 A CN109445969 A CN 109445969A CN 201811475932 A CN201811475932 A CN 201811475932A CN 109445969 A CN109445969 A CN 109445969A
- Authority
- CN
- China
- Prior art keywords
- node
- request
- data
- tgt
- thread
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004891 communication Methods 0.000 title claims abstract description 83
- 238000000034 method Methods 0.000 title abstract description 25
- 230000004044 response Effects 0.000 claims abstract description 53
- 238000012544 monitoring process Methods 0.000 claims abstract description 29
- 238000005538 encapsulation Methods 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 10
- 230000005540 biological transmission Effects 0.000 claims description 7
- 238000004422 calculation algorithm Methods 0.000 claims description 7
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 12
- 238000012545 processing Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 4
- 230000006872 improvement Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 206010033799 Paralysis Diseases 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000009885 systemic effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3006—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/302—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3051—Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/465—Distributed object oriented systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Quality & Reliability (AREA)
- Mathematical Physics (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请公开了一种分布式tgt节点间的通信方法,包括:开启事件监测;在监测到应答事件后调用预设tgt应答线程,以便建立与对方节点的通信连接,接收对方节点发送的第一请求数据,生成并发送第一应答数据至对方节点;在监测到请求事件后调用预设tgt请求线程,以便请求与目标节点建立通信连接,向目标节点发送第二请求数据,并接收目标节点发送的第二应答数据。本申请可在不影响主线程的监控状态的情况下,同时处理多个应答事件和请求事件,有序地实现了在tgt集群层面的数据通信,保障了节点中的多项应用服务同时正常运行。本申请所提供的分布式tgt节点间的通信装置、设备及计算机可读存储介质同样具有上述有益效果。
Description
技术领域
本申请涉及分布式存储技术领域,特别涉及一种分布式tgt节点间的通信方法、装置、设备及计算机可读存储介质。
背景技术
tgt是linux系统下的一种分布式存储协议软件,利用tgt提供的服务接口可以对分布式节点对应的块存储设备进行数据访问。然而,现有技术中,部署了tgt的分布式节点之间仅存在有系统底层上的存储关联,并没有在用户态中实现tgt集群层面上的通信,如此将越来越无法满足大规模集群间大量的数据存储与交互需求。鉴于此,提供一种解决上述问题的方法已经成为本领域技术人员所亟需关注的。
发明内容
本申请的目的在于提供一种分布式tgt节点间的通信方法、装置、设备及计算机可读存储介质,以便利用tgt集群层面的通信实现分布式tgt节点间的数据请求和应答。
为解决上述技术问题,本申请提供了一种分布式tgt节点间的通信方法,包括:
开启事件监测;
在监测到应答事件后调用预设tgt应答线程,以便建立与对方节点的通信连接,接收所述对方节点发送的第一请求数据,生成并发送第一应答数据至所述对方节点;
在监测到请求事件后调用预设tgt请求线程,以便请求与目标节点建立通信连接,向所述目标节点发送第二请求数据,并接收所述目标节点发送的第二应答数据。
可选地,所述接收所述对方节点发送的第一请求数据,生成并发送第一应答数据至所述对方节点包括:
根据负载均衡算法确定出预设子线程中的性能最佳子线程;
调用所述性能最佳子线程以监控与所述对方节点的通信连接,以便在接收到所述第一请求数据后,生成并发送所述第一应答数据至所述对方节点。
可选地,在所述调用所述性能最佳子线程以监控与所述对方节点的通信连接之后,还包括:
设置所述性能最佳子线程的线程锁。
可选地,所述生成并发送第一应答数据至所述对方节点包括:
调用预设封装编译器,将生成的所述第一应答数据封装为字符串型数据后发送至所述对方节点;
所述向所述目标节点发送第二请求数据包括:
调用所述预设封装编译器,将生成的所述第二请求数据封装为字符串型数据后发送至所述目标节点。
本申请还提供了一种分布式tgt节点间的通信装置,包括:
监测模块,用于开启事件监测;
应答模块,用于在监测到应答事件后调用预设tgt应答线程,以便建立与对方节点的通信连接,接收所述对方节点发送的第一请求数据,生成并发送第一应答数据至所述对方节点;
请求模块,用于在监测到请求事件后调用预设tgt请求线程,以便请求与目标节点建立通信连接,向所述目标节点发送第二请求数据,并接收所述目标节点发送的第二应答数据。
可选地,所述应答模块包括:
负载均衡单元,用于根据负载均衡算法确定出预设子线程中的性能最佳子线程;
执行单元,用于调用所述性能最佳子线程以监控与所述对方节点的通信连接,以便在接收到所述第一请求数据后,生成并发送所述第一应答数据至所述对方节点。
可选地,所述执行单元还用于:在所述调用所述性能最佳子线程以监控与所述对方节点的通信连接之后,设置所述性能最佳子线程的线程锁。
可选地,所述应答模块具体用于:调用预设封装编译器,将生成的所述第一应答数据封装为字符串型数据后发送至所述对方节点;
所述请求模块具体用于:调用所述预设封装编译器,将生成的所述第二请求数据封装为字符串型数据后发送至所述目标节点。
本申请还提供了一种分布式tgt节点间的通信设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现如上所述的任一种分布式tgt节点间的通信方法的步骤。
本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时用以实现如上所述的任一种分布式tgt节点间的通信方法的步骤。
本申请所提供的分布式tgt节点间的通信方法包括:开启事件监测;在监测到应答事件后调用预设tgt应答线程,以便建立与对方节点的通信连接,接收所述对方节点发送的第一请求数据,生成并发送第一应答数据至所述对方节点;在监测到请求事件后调用预设tgt请求线程,以便请求与目标节点建立通信连接,向所述目标节点发送第二请求数据,并接收所述目标节点发送的第二应答数据。可见,本申请利用预设tgt应答线程与预设tgt请求线程的并行处理,可在不影响主线程的监控状态的情况下,同时处理多个应答事件和请求事件,有序地实现了在tgt集群层面的数据通信,保障了节点中的多项应用服务同时正常运行,有效地提高了产品性能和用户体验。本申请所提供的分布式tgt节点间的通信装置、设备及计算机可读存储介质可以实现上述分布式tgt节点间的通信方法,同样具有上述有益效果。
附图说明
为了更清楚地说明现有技术和本申请实施例中的技术方案,下面将对现有技术和本申请实施例描述中需要使用的附图作简要的介绍。当然,下面有关本申请实施例的附图描述的仅仅是本申请中的一部分实施例,对于本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图,所获得的其他附图也属于本申请的保护范围。
图1为本申请所提供的一种分布式tgt节点间的通信方法的流程图;
图2为本申请所提供的分布式tgt节点间的通信方法在一具体实施例中的示意图;
图3为本申请所提供的一种分布式tgt节点间的通信装置的结构框图。
具体实施方式
本申请的核心在于提供一种分布式tgt节点间的通信方法、装置、设备及计算机可读存储介质,以便利用tgt集群层面的通信实现分布式tgt节点间的数据请求和应答。
为了对本申请实施例中的技术方案进行更加清楚、完整地描述,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行介绍。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例公开了一种分布式tgt节点间的通信方法,参照图1所示,该方法主要包括以下步骤:
S1:开启事件监测;若监测到应答事件,则进入S2;若监测到请求事件,则进入S3。
具体地,本实施例所提供的分布式tgt节点间的通信方法,具体可应用于各个分布式tgt节点中,并且,具体可对Libevent消息通信组件中的相关命令、接口进行封装部署而实现。其中,作为底层的网络库,Libevent支持Windows、Linux、*BSD和Mac Os等多种操作系统,并且支持多种I/O多路复用技术,例如epoll事件触发等,具有轻量级、高性能的特点,已经被广泛应用。具体地,可以采用epoll事件触发和监听的方式来构建监听器,以便在本节点产生请求事件和应答事件后调用对应的预设线程去处理。
S2:调用预设tgt应答线程,以便建立与对方节点的通信连接,接收对方节点发送的第一请求数据,生成并发送第一应答数据至对方节点。
S3:调用预设tgt请求线程,以便请求与目标节点建立通信连接,向目标节点发送第二请求数据,并接收目标节点发送的第二应答数据。
具体地,所说的应答事件,即本节点需要响应来自于对方节点的数据请求、向对方节点提供数据访问服务的事件;而所说的请求事件,即本节点需要向目标节点请求数据、从目标节点处获取数据访问服务的事件。
而又由于一个分布式tgt节点中运行有多种服务进程,所以可能会同时生成许多请求事件和应答事件,因此,本申请所提供的分布式tgt节点间的通信方法中,具体设置了两个相互独立的线程及其管道pipe,以便分别来处理应答事件和请求事件,
其中,预设tgt应答线程用于处理应答事件。对于一个待处理的应答事件,首先可建立与对方节点的通信连接,从而接收对方节点发送来的第一请求数据,以便根据该第一请求数据为对方节点提供数据访问服务,向对方节点发送第一应答数据。
容易理解的是,本节点在与对方节点建立通信连接的过程中,可按照系统的通信协议进行握手处理、身份验证等一系列相关操作,本领域技术人员可自行选择并设置实现,本申请对此并不进行限定。
此外,预设tgt请求线程用于处理请求事件。当本节点中的某项服务中需要获取目标节点的数据等时,可首先向目标节点请求建立通信连接,继而向其发送第二请求数据,以便目标节点响应于本节点的数据请求,而将生成的第二应答数据发送至本节点。
本申请所提供的分布式tgt节点间的通信方法包括:开启事件监测;在监测到应答事件后调用预设tgt应答线程,以便建立与对方节点的通信连接,接收对方节点发送的第一请求数据,生成并发送第一应答数据至对方节点;并在监测到请求事件后调用预设tgt请求线程,以便请求与目标节点建立通信连接,向目标节点发送第二请求数据,并接收目标节点发送的第二应答数据。可见,本申请利用预设tgt应答线程与预设tgt请求线程的并行处理,可在不影响主线程的监控状态的情况下,同时处理多个应答事件和请求事件,有序地实现了在tgt集群层面的数据通信,保障了节点中的多项应用服务同时正常运行,有效地提高了产品性能和用户体验。
本申请所提供的分布式tgt节点间的通信方法,在上述内容的基础上,作为一种优选实施例,接收对方节点发送的第一请求数据,生成并发送第一应答数据至对方节点包括:
根据负载均衡算法确定出预设子线程中的性能最佳子线程;
调用性能最佳子线程以监控与对方节点的通信连接,以便在接收到第一请求数据后,生成并发送第一应答数据至对方节点。
具体地,由于在许多应答事件的实际应用场景中,一个节点可能会同时接收到多个对方节点发送来的数据请求,并且,一个对方节点的数据访问过程可能会持续较长的一段时间,所以若仅由一个线程处理所有的应答事件,会大大影响系统的处理性能和效率。因此,在本实施例中,在调用预设tgt应答线程处理应答事件时,还可以再进一步开启多个子线程,每当接收到一个应答事件后便可以将其分配给其中一个子线程进行处理,以防止一个应答事件处理过程中出现的阻塞现象而引起整个系统的功能瘫痪。
具体地,在从多个预设子线程中选择处理当前刚生成的应答事件的子线程时,具体可以采用负载均衡算法来确定,由此选择出的子线程即为性能最佳子线程。例如,所说的性能最佳子线程可具体选择为目前所负责的应答事件个数最小的预设子线程。一般地,在Linux系统中,可具体通过向线程池中写入对应的字符来激活所选择的性能最佳子线程。
具体可参考图2,图2为本申请所提供的分布式tgt节点间的通信方法的示意图。每个预设子线程也均可以通过注册监听器来对其负责的应答事件进行监控以待处理。每当新增了一个应答事件后,预设子线程便可以将该应答事件列入监控对象,以便在接收到该应答事件的对方节点发送的第一请求数据后,对其进行应答处理。
本申请所提供的分布式tgt节点间的通信方法,在上述内容的基础上,作为一种优选实施例,调用性能最佳子线程以监控与对方节点的通信连接之后,还包括:
设置性能最佳子线程的线程锁。
具体地,由于分布式系统具有数据一致性和同步性的要求,所以不同的访问节点不允许对同一数据文件同时进行读写访问。因此,为了保障数据的安全使用和分布式系统的正常运维,在本实施例中,每当生成一个应答事件并为其分配了性能最佳子线程进行应答处理后,可进一步为该性能最佳子线程设置对应的线程锁,以便通过线程锁的信号量标识该应答事件对相关数据文件的访问权限,进而防止其他线程对该数据文件的同时访问。
还需要说明的是,由于请求事件是以本节点为主动发起的,因此不会存在因同时处理多个请求事件而造成系统瘫痪的情况,因此,针对于请求事件,既可以不调用子线程进行处理,也可以类似于应答事件的处理方式而分配给相关的子线程进行处理,本领域技术人员可根据实际应用情况而自行选择并设置实现,本申请对此并不进行限定。
本申请所提供的分布式tgt节点间的通信方法,在上述内容的基础上,作为一种优选实施例,生成并发送第一应答数据至对方节点包括:
调用预设封装编译器,将生成的第一应答数据封装为字符串型数据后发送至对方节点;
向目标节点发送第二请求数据包括:
调用预设封装编译器,将生成的第二请求数据封装为字符串型数据后发送至目标节点。
具体地,由于Libevent消息通信组件中所支持的通信数据一般均为字符串型数据,而在许多实际应用场景中,分布式tgt节点间的通信数据还常包括一些其他类型的数据,例如文本型数据、数值型数据等。因此,在本实施例中,还可以设置对应的预设封装编译器,用于将其他型数据封装转换为字符串型数据,或者将字符串型数据编译转换为其他型数据。
由此,当预设tgt应答线程或者其子线程在应答处理对方节点的第一请求数据时,可具体利用预设封装编译器将生成的第一应答数据封装为字符串型数据后再发送至对方节点。
类似地,预设tgt请求线程或者其子线程在向目标节点进行数据请求时,可具体利用预设封装编译器将生成的第二请求数据封装为字符串型数据后再发送至目标节点。相对应地,一个节点在接收到经封装后的字符串型数据时,可以调用预设封装编译器进行编译,以转换为原有数据类型。
下面对本申请所提供的分布式tgt节点间的通信装置进行介绍。请参阅图3,图3为本申请所提供的一种分布式tgt节点间的通信装置的结构框图;包括:
监测模块1,用于开启事件监测;
应答模块2,用于在监测到应答事件后调用预设tgt应答线程,以便建立与对方节点的通信连接,接收对方节点发送的第一请求数据,生成并发送第一应答数据至对方节点;
请求模块3,用于在监测到请求事件后调用预设tgt请求线程,以便请求与目标节点建立通信连接,向目标节点发送第二请求数据,并接收目标节点发送的第二应答数据。
可见,本申请利用预设tgt应答线程与预设tgt请求线程的并行处理,可在不影响主线程的监控状态的情况下,同时处理多个应答事件和请求事件,有序地实现了在tgt集群层面的数据通信,保障了节点中的多项应用服务同时正常运行,有效地提高了产品性能和用户体验。
在上述内容基础上,本申请所提供的分布式tgt节点间的通信装置中,作为一种优选实施例,应答模块2包括:
负载均衡单元,用于根据负载均衡算法确定出预设子线程中的性能最佳子线程;
执行单元,用于调用性能最佳子线程以监控与对方节点的通信连接,以便在接收到第一请求数据后,生成并发送第一应答数据至对方节点。
在上述内容基础上,本申请所提供的分布式tgt节点间的通信装置中,作为一种优选实施例,执行单元还用于:在调用性能最佳子线程以监控与对方节点的通信连接之后,设置性能最佳子线程的线程锁。
在上述内容基础上,本申请所提供的分布式tgt节点间的通信装置中,作为一种优选实施例,应答模块2具体用于:调用预设封装编译器,将生成的第一应答数据封装为字符串型数据后发送至对方节点;
请求模块3具体用于:调用预设封装编译器,将生成的第二请求数据封装为字符串型数据后发送至目标节点。
进一步地,本申请还公开了一种分布式tgt节点间的通信设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现如上所述的任一种分布式tgt节点间的通信方法的步骤。
进一步地,本申请还公开了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时用以实现如上所述的任一种分布式tgt节点间的通信方法的步骤。
本申请所提供的分布式tgt节点间的通信装置、设备及计算机可读存储介质的具体实施方式与上文所描述的分布式tgt节点间的通信方法可相互对应参照,这里就不再赘述。
本申请中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
还需说明的是,在本申请文件中,诸如“第一”和“第二”之类的关系术语,仅仅用来将一个实体或者操作与另一个实体或者操作区分开来,而不一定要求或者暗示这些实体或者操作之间存在任何这种实际的关系或者顺序。此外,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本申请所提供的技术方案进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请的保护范围内。
Claims (10)
1.一种分布式tgt节点间的通信方法,其特征在于,包括:
开启事件监测;
在监测到应答事件后调用预设tgt应答线程,以便建立与对方节点的通信连接,接收所述对方节点发送的第一请求数据,生成并发送第一应答数据至所述对方节点;
在监测到请求事件后调用预设tgt请求线程,以便请求与目标节点建立通信连接,向所述目标节点发送第二请求数据,并接收所述目标节点发送的第二应答数据。
2.根据权利要求1所述的通信方法,其特征在于,所述接收所述对方节点发送的第一请求数据,生成并发送第一应答数据至所述对方节点包括:
根据负载均衡算法确定出预设子线程中的性能最佳子线程;
调用所述性能最佳子线程以监控与所述对方节点的通信连接,以便在接收到所述第一请求数据后,生成并发送所述第一应答数据至所述对方节点。
3.根据权利要求2所述的通信方法,其特征在于,在所述调用所述性能最佳子线程以监控与所述对方节点的通信连接之后,还包括:
设置所述性能最佳子线程的线程锁。
4.根据权利要求1至3任一项所述的通信方法,其特征在于,所述生成并发送第一应答数据至所述对方节点包括:
调用预设封装编译器,将生成的所述第一应答数据封装为字符串型数据后发送至所述对方节点;
所述向所述目标节点发送第二请求数据包括:
调用所述预设封装编译器,将生成的所述第二请求数据封装为字符串型数据后发送至所述目标节点。
5.一种分布式tgt节点间的通信装置,其特征在于,包括:
监测模块,用于开启事件监测;
应答模块,用于在监测到应答事件后调用预设tgt应答线程,以便建立与对方节点的通信连接,接收所述对方节点发送的第一请求数据,生成并发送第一应答数据至所述对方节点;
请求模块,用于在监测到请求事件后调用预设tgt请求线程,以便请求与目标节点建立通信连接,向所述目标节点发送第二请求数据,并接收所述目标节点发送的第二应答数据。
6.根据权利要求5所述的通信装置,其特征在于,所述应答模块包括:
负载均衡单元,用于根据负载均衡算法确定出预设子线程中的性能最佳子线程;
执行单元,用于调用所述性能最佳子线程以监控与所述对方节点的通信连接,以便在接收到所述第一请求数据后,生成并发送所述第一应答数据至所述对方节点。
7.根据权利要求6所述的通信装置,其特征在于,所述执行单元还用于:
在所述调用所述性能最佳子线程以监控与所述对方节点的通信连接之后,设置所述性能最佳子线程的线程锁。
8.根据权利要求5至7任一项所述的通信装置,其特征在于,所述应答模块具体用于:调用预设封装编译器,将生成的所述第一应答数据封装为字符串型数据后发送至所述对方节点;
所述请求模块具体用于:调用所述预设封装编译器,将生成的所述第二请求数据封装为字符串型数据后发送至所述目标节点。
9.一种分布式tgt节点间的通信设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现如权利要求1至4任一项所述的分布式tgt节点间的通信方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时用以实现如权利要求1至4任一项所述的分布式tgt节点间的通信方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811475932.6A CN109445969A (zh) | 2018-12-04 | 2018-12-04 | 一种分布式tgt节点间的通信方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811475932.6A CN109445969A (zh) | 2018-12-04 | 2018-12-04 | 一种分布式tgt节点间的通信方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109445969A true CN109445969A (zh) | 2019-03-08 |
Family
ID=65556967
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811475932.6A Pending CN109445969A (zh) | 2018-12-04 | 2018-12-04 | 一种分布式tgt节点间的通信方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109445969A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109992433A (zh) * | 2019-04-11 | 2019-07-09 | 苏州浪潮智能科技有限公司 | 一种分布式tgt通信优化方法、装置、设备及存储介质 |
CN110187985A (zh) * | 2019-05-30 | 2019-08-30 | 苏州浪潮智能科技有限公司 | 一种通信方法、系统及装置 |
CN112069025A (zh) * | 2020-08-25 | 2020-12-11 | 北京五八信息技术有限公司 | 锁过期事件的处理方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6584474B1 (en) * | 1998-08-31 | 2003-06-24 | Computer Associates Think, Inc. | Method and apparatus for fast and comprehensive DBMS analysis |
CN105812327A (zh) * | 2014-12-29 | 2016-07-27 | 航天信息股份有限公司 | 复合型高性能多用通讯方法及系统 |
CN106293522A (zh) * | 2016-08-03 | 2017-01-04 | 浪潮(北京)电子信息产业有限公司 | 一种基于tgt的存储性能优化方法和装置 |
CN106789259A (zh) * | 2016-12-26 | 2017-05-31 | 中国科学院信息工程研究所 | 一种LoRa核心网系统及实现方法 |
CN107277131A (zh) * | 2017-06-15 | 2017-10-20 | 深圳市云舒网络技术有限公司 | 一种分布式存储系统中tgt稳定性优化方法 |
CN108737573A (zh) * | 2018-06-28 | 2018-11-02 | 郑州云海信息技术有限公司 | 一种分布式存储集群及其服务响应控制方法、装置和设备 |
-
2018
- 2018-12-04 CN CN201811475932.6A patent/CN109445969A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6584474B1 (en) * | 1998-08-31 | 2003-06-24 | Computer Associates Think, Inc. | Method and apparatus for fast and comprehensive DBMS analysis |
CN105812327A (zh) * | 2014-12-29 | 2016-07-27 | 航天信息股份有限公司 | 复合型高性能多用通讯方法及系统 |
CN106293522A (zh) * | 2016-08-03 | 2017-01-04 | 浪潮(北京)电子信息产业有限公司 | 一种基于tgt的存储性能优化方法和装置 |
CN106789259A (zh) * | 2016-12-26 | 2017-05-31 | 中国科学院信息工程研究所 | 一种LoRa核心网系统及实现方法 |
CN107277131A (zh) * | 2017-06-15 | 2017-10-20 | 深圳市云舒网络技术有限公司 | 一种分布式存储系统中tgt稳定性优化方法 |
CN108737573A (zh) * | 2018-06-28 | 2018-11-02 | 郑州云海信息技术有限公司 | 一种分布式存储集群及其服务响应控制方法、装置和设备 |
Non-Patent Citations (4)
Title |
---|
JESSICA程序猿: "iscsi target tgt架构", 《HTTPS://WWW.CNBLOGS.COM/WUCHANMING/P/4894373.HTML》 * |
MATRIX207: "LIO", 《HTTPS://MATRIX207.GITHUB.IO/2014/11/26/LIO/》 * |
RICKY_PC: "epoll学习:思考一种高性能的服务器处理框架", 《BLOG.CHINAUNIX.NET/UID-23842323-ID-2656597.HTML》 * |
祁峰: "系统架构之高性能数据传输系统的框架设计", 《HTTPS://BLOG.CSDN.NET/QIFENGZOU/ARTICLE/DETAILS/23912267》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109992433A (zh) * | 2019-04-11 | 2019-07-09 | 苏州浪潮智能科技有限公司 | 一种分布式tgt通信优化方法、装置、设备及存储介质 |
CN110187985A (zh) * | 2019-05-30 | 2019-08-30 | 苏州浪潮智能科技有限公司 | 一种通信方法、系统及装置 |
CN110187985B (zh) * | 2019-05-30 | 2021-10-15 | 苏州浪潮智能科技有限公司 | 一种通信方法、系统及装置 |
CN112069025A (zh) * | 2020-08-25 | 2020-12-11 | 北京五八信息技术有限公司 | 锁过期事件的处理方法及装置 |
CN112069025B (zh) * | 2020-08-25 | 2024-02-23 | 北京五八信息技术有限公司 | 锁过期事件的处理方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3447965B1 (en) | Network function instance management method and relevant device | |
CN109445969A (zh) | 一种分布式tgt节点间的通信方法、装置及设备 | |
CN104978261B (zh) | 应用程序的测试方法、装置及系统 | |
CN105721318B (zh) | 一种软件定义网络sdn中发现网络拓扑的方法和装置 | |
CN107770269B (zh) | 一种服务响应方法及其终端 | |
CN105335229A (zh) | 一种业务资源的调度方法和装置 | |
CN111797173B (zh) | 联盟链共享系统、方法、装置、电子设备及存储介质 | |
CN109412878A (zh) | 多租户业务接入实现方法、装置及电子设备 | |
CN111984561B (zh) | 一种bmc的ipmi命令处理方法、系统、设备以及介质 | |
CN113132293B (zh) | 攻击检测方法、设备及公共蜜罐系统 | |
CN106817236A (zh) | 虚拟网络功能的配置方法和装置 | |
CN110912972A (zh) | 一种业务处理方法、系统、电子设备及可读存储介质 | |
CN110519354A (zh) | 一种分布式对象存储系统及其业务处理方法和存储介质 | |
CN106970843B (zh) | 远程调用方法和装置 | |
CN105490960A (zh) | Sdn架构、基于sdn架构的报文转发方法 | |
JP2016119583A (ja) | Ip電話ネットワークシステムとサーバ装置、ip交換機及びリソース容量拡張方法 | |
CN114244654B (zh) | 一种url的转发方法、装置、设备及计算机存储介质 | |
CN112671914B (zh) | 一种基于actor模型的物联网设备通讯方法和系统 | |
CN108062247A (zh) | 一种内存管理方法及系统 | |
EP3240251A1 (en) | Line card determination, determination processing method and device, and line card determination system | |
US7194534B2 (en) | Display of phones on a map of a network | |
CN105827567B (zh) | 服务管控方法及能力开放平台 | |
CN113010363B (zh) | 一种swarm集群下的容器监控方法和共享服务云平台 | |
CN110532088B (zh) | 连接处理方法、装置、计算机设备和存储介质 | |
KR20210078115A (ko) | 전화 교환 시스템의 메시지 전달 장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190308 |