CN111835770B - 一种数据处理方法、装置、服务器及存储介质 - Google Patents
一种数据处理方法、装置、服务器及存储介质 Download PDFInfo
- Publication number
- CN111835770B CN111835770B CN202010677837.5A CN202010677837A CN111835770B CN 111835770 B CN111835770 B CN 111835770B CN 202010677837 A CN202010677837 A CN 202010677837A CN 111835770 B CN111835770 B CN 111835770B
- Authority
- CN
- China
- Prior art keywords
- udp
- link
- target
- processing
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/164—Adaptation or special uses of UDP protocol
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5018—Thread allocation
Abstract
本发明提供一种数据处理方法、装置、服务器及存储介质,属于数据处理技术领域。该方法包括:接收终端通过UDP协议发送的UDP数据,其中,UDP数据包括UDP链接身份标识ID;根据UDP链接ID,从多个接收处理线程和多个发送线程中为UDP链接ID对应的UDP数据分配目标接收处理线程和目标发送线程;通过目标接收处理线程对UDP数据进行处理,得到处理后的数据。通过UDP链接ID,从多个接收处理线程和多个发送线程中为UDP链接ID对应的UDP数据分配目标接收处理线程和目标发送线程,最大限度的利用服务器资源,可以处理更多地UDP数据,提高了服务器对UDP数据的处理速率。
Description
技术领域
本申请涉及数据处理技术领域,具体而言,涉及一种数据处理方法、装置、服务器及存储介质。
背景技术
互联网时代的服务器模型中一般使TCP协议(Transmission Control Protocol,传输控制协议),TCP协议具有链接状态,可靠传输等一系列的特性,但是,在网络较差的环境中,TCP协议的表现让人不满意,比如传输延迟过大,可靠传输速率过低等。另一种可用的传输协议是UDP协议(User Datagram Protocol,用户数据报协议),可以弥补TCP协议的一些不足。
现有技术中,使用UDP协议的服务器的线程模型都比较简单,一般就是一个接收处理线程处理UDP数据,一个发送线程发送处理后的UDP数据。
但是,使用现有的UDP数据处理方式,接收处理线程和发送线程均是单线程,性能上会受到限制,造成服务器处理速率低。
发明内容
本发明的目的在于提供一种数据处理方法、装置、服务器及存储介质,可以解决现有技术中接收处理线程和发送线程均是单线程,性能上会受到限制,造成服务器处理速率低的问题。本发明的实施例是这样实现的:
本发明实施例一方面,提供一种数据处理方法,该方法包括:
接收终端通过用户数据报协议UDP协议发送的UDP数据,其中,所述UDP数据包括UDP链接身份标识ID;
根据所述UDP链接ID,从多个接收处理线程和多个发送线程中为所述UDP链接ID对应的所述UDP数据分配目标接收处理线程和目标发送线程;
通过所述目标接收处理线程对所述UDP数据进行处理,得到处理后的数据。
可选的,根据所述UDP链接ID,从多个接收处理线程和多个发送线程中为所述UDP链接ID对应的所述UDP数据分配目标接收处理线程和目标发送线程,包括:
若所述UDP链接ID指示UDP链接为新链接,则从多个接收处理线程和多个发送线程中随机分配所述目标接收处理线程和所述目标发送线程;
若所述UDP链接ID指示UDP链接为已有链接,则根据所述UDP链接ID以及预设算法,计算获取所述目标接收处理线程的标识和所述目标发送线程的标识。
可选的,所述若所述UDP链接ID指示UDP链接为新链接,则从多个接收处理线程和多个发送线程中随机分配所述目标接收处理线程和所述目标发送线程,包括:
若所述UDP链接ID指示UDP链接为新链接,则根据预设算法、随机数、以及所述接收处理线程的数量,计算获取所述目标接收处理线程的ID,并确定所述目标发送线程的ID与所述目标接收处理线程的ID相同。
可选的,所述根据预设算法、随机数、以及所述接收处理线程的数量,计算获取所述目标接收处理线程的ID,并确定所述目标发送线程的ID与所述目标接收处理线程的ID相同之后,还包括:
根据初始全局标识、所述目标接收处理线程的ID,为所述UDP链接ID赋值,获取所述UDP链接对应的新的UDP链接ID。
可选的,所述若所述UDP链接ID指示UDP链接为已有链接,则根据所述UDP链接ID以及预设算法,计算获取所述目标接收处理线程的标识和所述目标发送线程的标识,包括:
若所述UDP链接ID指示UDP链接为已有链接,则根据所述UDP链接的ID查找对应的目标接收处理线程和目标发送线程。
可选的,所述通过所述目标接收处理线程对所述UDP数据进行处理,得到处理后的数据之后,还包括:
根据所述处理后的数据对应的应用层,对所述处理后的数据进行业务处理,获取目标数据;
通过所述目标发送线程向所述终端发送所述目标数据。
本发明另一方面,提供一种数据处理装置,该装置包括:
接收模块,用于接收终端通过用户数据报协议UDP协议发送的UDP数据,其中,所述UDP数据包括UDP链接身份标识ID;
分配模块,用于根据所述UDP链接ID,从多个接收处理线程和多个发送线程中为所述UDP链接ID对应的所述UDP数据分配目标接收处理线程和目标发送线程;
处理模块,用于通过所述目标接收处理线程对所述UDP数据进行处理,得到处理后的数据。
可选的,所述分配模块,具体用于若所述UDP链接ID指示UDP链接为新链接,则从多个接收处理线程和多个发送线程中随机分配所述目标接收处理线程和所述目标发送线程;若所述UDP链接ID指示UDP链接为已有链接,则根据所述UDP链接ID以及预设算法,计算获取所述目标接收处理线程的标识和所述目标发送线程的标识。
可选的,所述分配模块,具体用于若所述UDP链接ID指示UDP链接为新链接,则根据预设算法、随机数、以及所述接收处理线程的数量,计算获取所述目标接收处理线程的ID,并确定所述目标发送线程的ID与所述目标接收处理线程的ID相同。
可选的,所述装置还包括:
获取模块,用于根据初始全局标识、所述目标接收处理线程的ID,为所述UDP链接ID赋值,获取所述UDP链接对应的新的UDP链接ID。
可选的,所述获取模块,还用于若所述UDP链接ID指示UDP链接为已有链接,则根据所述UDP链接的ID查找对应的目标接收处理线程和目标发送线程。
可选的,所述处理模块,还用于根据所述处理后的数据对应的应用层,对所述处理后的数据进行业务处理,获取目标数据;通过所述目标发送线程向所述终端发送所述目标数据。
本发明另一方面,还提供一种数据处理服务器,包括:处理器、存储器,所述存储器存储有所述处理器可执行的计算机程序,所述处理器执行所述计算机程序时实现上述任一所述的一种数据处理方法。
本发明另一方面,还提供一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被读取并执行时,实现上述任一所述的一种数据处理方法。
本发明实施例的有益效果包括:
本发明实施例提供的一种数据处理方法、装置、服务器及存储介质中,接收终端通过UDP协议发送的UDP数据,其中,UDP数据包括UDP链接身份标识ID;根据UDP链接ID,从多个接收处理线程和多个发送线程中为UDP链接ID对应的UDP数据分配目标接收处理线程和目标发送线程;通过目标接收处理线程对UDP数据进行处理,得到处理后的数据。其中,通过UDP链接ID,从多个接收处理线程和多个发送线程中为UDP链接ID对应的UDP数据分配目标接收处理线程和目标发送线程,实现了采用多个接收处理线程和多个发送线程最大限度的利用服务器资源,可以处理更多地UDP数据,提高了服务器对UDP数据的处理速率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明实施例提供的一种数据处理方法的流程示意图;
图2为本发明实施例提供的一种数据处理方法的流程示意图;
图3为本发明实施例提供的一种数据处理方法的流程示意图;
图4为本发明实施例提供的一种数据处理装置的结构示意图;
图5为本发明实施例提供的一种数据处理装置的结构示意图;
图6为本发明另一实施例提供的一种数据处理服务器的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
图1为本发明实施例提供的一种数据处理方法的流程示意图,该方法可以应用于服务器,该服务器可以通过互联网、4G/5G移动通信网络、物联网等通信方式与终端建立通信连接,该终端可以是手机、计算机、平板电脑等各类用户终端,但不以此为限。在本发明实施例中,终端与服务器之间采用的通信协议为UDP协议,其中,UDP协议具有高速、高效的特点。
该方法包括:
S101、接收终端通过UDP协议发送的UDP数据。
终端可以将UDP数据封装为UDP数据包,将UDP数据包发送至服务器,服务器接收UDP数据包后,对UDP数据包进行拆封,并获取UDP数据,以便对UDP数据进行处理。
其中,UDP数据包可以由服务器内部的接收线程进行接收,接收线程接收UDP数据包后,可以对UDP数据包进行拆解并获取UDP数据,UDP数据包括UDP链接身份标识ID,UDP数据是在UDP链接上进行传输的。
S102、根据UDP链接ID,从多个接收处理线程和多个发送线程中为UDP链接ID对应的UDP数据分配目标接收处理线程和目标发送线程。
其中,UDP链接ID可以作为UDP数据的UDP数据标识,服务器可以根据UDP链接ID,为UDP数据分配目标接收处理线程和目标发送线程。目标接收处理线程用于对UDP数据进行接收处理,目标发送线程用于将服务器处理结束后的UDP数据向终端发送。
当处理大量的UDP数据时,可以根据每一UDP数据中的UDP链接ID为每一UDP数据分配目标接收处理线程和目标发送线程,以实现多个接收处理线程和多个发送线程可以并发处理大量的UDP数据,充分利用服务器资源,提高了UDP数据的处理数量以及UDP数据收发的吞吐量。
S103、通过目标接收处理线程对UDP数据进行处理,得到处理后的数据。
其中,接收处理线程包括:多个接收UDP链接对象,该接收UDP链接对象用于处理UDP数据,当为UDP数据分配目标接收处理线程后,可以根据UDP数据从该目标接收处理线程的多个接收UDP链接对象中调取目标接收UDP链接对象,以使得目标接收UDP链接对象对UDP数据进行处理。下述通过示例,对目标接收处理线程对UDP数据进行处理,进行详细的解释说明。
当服务器中的接收线程为UDP数据分配目标接收处理线程和目标发送线程后,可以将UDP数据投递至目标接收处理线程的缓冲区,目标处理线程从自身的缓存区中获取UDP数据,并可以根据UDP数据的数据类型从多个UDP链接对象中调取可以处理该数据类型的UDP数据对应的目标UDP链接对象,目标UDP链接对象可以对UDP数据进行相应处理,得到处理后的数据。
每个接收处理线程中均包括一部分UDP链接对象,每个接收处理线程中的UDP链接对象可以处理一部分数据类型的UDP数据,多个接收处理线程可以处理大量不同数据类型的UDP数据,从而可以实现并发处理大量的UDP数据。
综上所述,本发明实施例中,接收终端通过用户数据报协议UDP协议发送的UDP数据,其中,UDP数据包括UDP链接身份标识ID;根据UDP链接ID,从多个接收处理线程和多个发送线程中为UDP链接ID对应的UDP数据分配目标接收处理线程和目标发送线程;通过目标接收处理线程对UDP数据进行处理,得到处理后的数据。实现了通过UDP链接ID,从多个接收处理线程和多个发送线程中为UDP链接ID对应的UDP数据分配目标接收处理线程和目标发送线程,从而可以采用多个接收处理线程和多个发送线程最大限度的利用服务器资源,处理更多地UDP数据,提高了服务器对UDP数据的处理速率。
图2为本发明实施例提供的一种数据处理方法的流程示意图,如图2所示,上述根据UDP链接ID,从多个接收处理线程和多个发送线程中为UDP链接ID对应的UDP数据分配目标接收处理线程和目标发送线程,包括:
S201、若UDP链接ID指示UDP链接为新链接,则从多个接收处理线程和多个发送线程中随机分配目标接收处理线程和目标发送线程。
其中,UDP链接为新链接指的是该数据类型的UDP数据未被任何接收处理线程处理过,也即还未分配过接收处理线程和目标发送线程。
具体地,若UDP链接ID指示UDP链接为新链接,接收线程可以随机指定一个接收处理线程和发送线程,将随机指定的接收处理线程和发送线程作为目标接收处理线程和目标发送线程。接收线程可以将接收的UDP数据投递至目标接收处理线程的缓存区,以便目标接收处理线程可以对UDP数据进行处理。
接收线程可以根据预设方式判断该UDP数据中的UDP链接为新链接或已有链接,例如通过UDP链接的标识来进行判断:
UDP链接ID为0,则为新链接;UDP链接的ID不为0,说明已经重新赋过值,则为已有链接。
也即,当接收线程获取到UDP数据中的UDP链接ID为0,则可以判断该UDP链接为新链接,当UDP链接ID不为0,则可以判断该UDP链接为已有链接。
S202、若UDP链接ID指示UDP链接为已有链接,则根据UDP链接ID以及预设算法,计算获取目标接收处理线程的标识和目标发送线程的标识。
其中,UDP链接为已有链接指的是该数据类型的UDP数据之前已经分配过接收处理线程、发送线程。服务器侧会记录有之前分配的目标接收处理线程的标识、目标发送线程的标识。目标接收线程的标识可以为目标接收线程的ID,目标发送线程的标识可以为目标发送线程的ID。
具体地,若UDP链接ID指示UDP链接为已有链接,则根据UDP链接的ID、接收处理线程的总数,计算目标接收处理线程的ID和目标发送线程的ID。下述示例的对计算目标接收处理线程的ID和目标发送线程的ID进行详细的解释说明:
假设UDP链接的ID为5,接收线程可以判断UDP链接的ID不为0,即该UDP链接为已有链接。若接收处理线程的数量为4,4个接收处理线程的ID可以分别(0、1、2、3)。此时,目标接收处理线程的ID=(UDP链接的ID)%(接收处理线程的总数)=5%4=1,“1”为目标接收处理线程的ID。在本申请实施例中接收处理线程和发送线程的个数相等,目标接收处理线程的ID与发送线程的ID相同。例如:当目标接收处理线程的ID为“1”时,则目标发送线程的ID也为“1”。
可选的,若UDP链接ID指示UDP链接为新链接,则从多个接收处理线程和多个发送线程中随机分配目标接收处理线程和目标发送线程,包括:
若UDP链接ID指示UDP链接为新链接,则根据预设算法、随机数、以及接收处理线程的数量,计算获取目标接收处理线程的ID,并确定目标发送线程的ID与目标接收处理线程的ID相同。
其中,若UDP链接ID指示UDP链接为新链接,则目标接收处理线程的ID=(随机数)%(接收处理线程的数量)。下述对UDP链接为新链接时,计算目标接收处理线程的ID进行详细的解释说明。
例如:假设随机数可以为6,接收处理线程的数量以4为例,接收处理线程的ID可以分别为(0、1、2、3),则目标接收处理线程的ID=6%4=2,目标发送线程的ID=目标接收处理线程的ID=“2”。
可选的,根据预设算法、随机数、以及接收处理线程的数量,计算获取目标接收处理线程的ID,并确定目标发送线程的ID与目标接收处理线程的ID相同之后,还包括:根据初始全局标识、目标接收处理线程的ID,为UDP链接ID赋值,获取UDP链接对应的新的UDP链接ID。
在本发明实施例中,当UDP链接为新链接,确定目标接收处理线程和目标发送线程之后,为该UDP链接的ID赋值,以便后续可以根据赋值后的UDP链接的ID找到该目标接收处理线程,通过该目标接收处理线程对该数据类型的UDP数据进行处理。其中,初始全局标识为初始全局ID,初始全局ID的初始值可以为1。
当初始全局ID%目标接收处理线程的ID为0时,则UDP链接对应的新的UDP链接ID等于初始全局ID,当初始全局ID%目标接收处理线程的ID不为0,则初始全局ID的初始值自增1,直到满足初始全局ID%目标接收处理线程的ID为0。下述对UDP链接ID赋值,获取UDP链接对应的新的UDP链接ID进行详细的解释说明。
loop:
GlobalID=GlobalID+1
if(GlobalID%RecvProcessThreadID==0)
ConnID=GlobalID
break
endloop
其中,GlobalID为初始全局ID,RecvProcessThreadID为目标接收处理线程,ConnID为UDP链接对应的新的UDP链接ID。
例如:假设目标接收处理线程的ID=4,初始全局ID=初始全局ID+1=1+1=2,则(初始全局ID)%(目标接收处理线程的ID)为2%4=2,不满足初始全局ID%目标接收处理线程的ID为0,初始全局ID=初始全局ID+1=2+1=3,则(初始全局ID)%(目标接收处理线程的ID)为3%4=3,不满足初始全局ID%目标接收处理线程的ID为0,初始全局ID=初始全局ID+1=3+1=4,则(初始全局ID)%(目标接收处理线程的ID)为4%4=0,满足初始全局ID%目标接收处理线程的ID为0,此时,UDP链接对应的新的UDP链接ID=初始全局ID=4。
可选的,若UDP链接ID指示UDP链接为已有链接,则根据UDP链接ID以及预设算法,计算获取目标接收处理线程的标识和目标发送线程的标识,包括:若UDP链接ID指示UDP链接为已有链接,则根据UDP链接的ID查找对应的目标接收处理线程和目标发送线程。
其中,UDP链接的ID对应的目标接收处理线程和目标发送线程指的是该UDP链接为新链接时,即首次处理该数据类型的UDP数据所分配的接收处理线程和发送线程。在UDP链接为已有链接时,所分配的接收处理线程和发送线程均与该UDP链接为新链接时,所分配的接收处理线程和发送线程相同。
例如:当UDP链接为新链接时,假设所分配的目标接收处理线程的ID为4,则根据初始全局标识、目标接收处理线程的ID,为UDP链接ID赋值得到UDP链接对应的新的UDP链接ID可以为4,则下次可以根据UDP链接ID查询找到ID为4的目标接收处理线程。其中,目标接收处理线程的ID等于目标发送线程的ID。
图3为本发明实施例提供的一种数据处理方法的流程示意图,如图3所示,可选的,通过目标接收处理线程对UDP数据进行处理,得到处理后的数据之后,还包括:
S301、根据处理后的数据对应的应用层,对处理后的数据进行业务处理,获取目标数据。
具体地,目标接收处理线程对UDP数据进行处理,可以得到处理后的数据,处理后的数据对应的应用层可以对处理后的数据进行业务处理,最终可以得到目标数据。其中,业务处理可以包括但不限于:统计、计算、存储等处理。
S302、通过目标发送线程向终端发送目标数据。
具体地,处理后的数据对应的应用层对处理后的数据进行业务处理,获取目标数据,可以通过调取目标发送线程,将目标数据投递至发送目标发送线程的UDP链接对象中,目标发送线程可以扫描自身的UDP链接对象,获取目标数据,以使得发送线程执行发送操作,向终端发送目标数据。
综上所述,本发明实施例提供一种数据处理方法,当UDP数据量较大时,可以根据UDP数据中的UDP链接ID为UDP链接分配目标接收处理线程和目标发送线程,无需再使用哈希表来进行UDP数据包的区分,提高服务器的对UDP数据的处理能力,采用多个接收处理线程和多个发送线程可以大大提升服务器处理UDP数据的吞吐量。
图4为本发明实施例提供的一种数据处理装置的结构示意图,如图4所示,该装置包括:
接收模块401,用于接收终端通过用户数据报协议UDP协议发送的UDP数据,其中,UDP数据包括UDP链接身份标识ID;
分配模块402,用于根据UDP链接ID,从多个接收处理线程和多个发送线程中为UDP链接ID对应的UDP数据分配目标接收处理线程和目标发送线程;
处理模块403,用于通过目标接收处理线程对UDP数据进行处理,得到处理后的数据。
可选的,分配模块402,具体用于若UDP链接ID指示UDP链接为新链接,则从多个接收处理线程和多个发送线程中随机分配目标接收处理线程和目标发送线程;若UDP链接ID指示UDP链接为已有链接,则根据UDP链接ID以及预设算法,计算获取目标接收处理线程的标识和目标发送线程的标识。
可选的,分配模块402,具体用于若UDP链接ID指示UDP链接为新链接,则根据预设算法、随机数、以及接收处理线程的数量,计算获取目标接收处理线程的ID,并确定目标发送线程的ID与目标接收处理线程的ID相同。
图5为本发明实施例提供的一种数据处理装置的结构示意图,如图5所示,可选的,该装置还包括:
获取模块501,用于根据初始全局标识、目标接收处理线程的ID,为UDP链接ID赋值,获取UDP链接对应的新的UDP链接ID。
可选的,获取模块501,还用于若UDP链接ID指示UDP链接为已有链接,则根据UDP链接的ID查找对应的目标接收处理线程和目标发送线程。
可选的,处理模块403,还用于根据处理后的数据对应的应用层,对处理后的数据进行业务处理,获取目标数据;通过目标发送线程向终端发送目标数据。
图6为本发明另一实施例提供的一种数据处理服务器的结构示意图,如图6所示,包括:存储器601、处理器602,存储器601中存储有可在处理器602上运行的计算机程序,处理器602执行计算机程序时,实现上述数据处理方法的步骤。
存储器601用于存储程序,处理器602调用存储器601存储的程序,以执行上述方法实施例。具体实现方式和技术效果类似,这里不再赘述。
可选地,本发明还提供一种程序产品,例如计算机可读存储介质,包括程序,该程序在被处理器执行时用于执行上述数据处理方法的步骤。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取存储器(英文:Random Access Memory,简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种数据处理方法,其特征在于,包括:
接收终端通过用户数据报协议UDP协议发送的UDP数据,其中,所述UDP数据包括UDP链接身份标识ID;
根据所述UDP链接ID,从多个接收处理线程和多个发送线程中为所述UDP链接ID对应的所述UDP数据分配目标接收处理线程和目标发送线程;
通过所述目标接收处理线程对所述UDP数据进行处理,得到处理后的数据;
根据所述UDP链接ID,从多个接收处理线程和多个发送线程中为所述UDP链接ID对应的所述UDP数据分配目标接收处理线程和目标发送线程,包括:
若所述UDP链接ID指示UDP链接为新链接,则从多个接收处理线程和多个发送线程中随机分配所述目标接收处理线程和所述目标发送线程;
若所述UDP链接ID指示UDP链接为已有链接,则根据所述UDP链接ID以及预设算法,计算获取所述目标接收处理线程的标识和所述目标发送线程的标识;
所述若所述UDP链接ID指示UDP链接为新链接,则从多个接收处理线程和多个发送线程中随机分配所述目标接收处理线程和所述目标发送线程,包括:
若所述UDP链接ID指示UDP链接为新链接,则根据预设算法、随机数、以及所述接收处理线程的数量,计算获取所述目标接收处理线程的ID,并确定所述目标发送线程的ID与所述目标接收处理线程的ID相同;
所述根据预设算法、随机数、以及所述接收处理线程的数量,计算获取所述目标接收处理线程的ID,并确定所述目标发送线程的ID与所述目标接收处理线程的ID相同之后,还包括:
根据初始全局标识、所述目标接收处理线程的ID,为所述UDP链接ID赋值,获取所述UDP链接对应的新的UDP链接ID。
2.如权利要求1所述的方法,其特征在于,所述若所述UDP链接ID指示UDP链接为已有链接,则根据所述UDP链接ID以及预设算法,计算获取所述目标接收处理线程的标识和所述目标发送线程的标识,包括:
若所述UDP链接ID指示UDP链接为已有链接,则根据所述UDP链接的ID查找对应的目标接收处理线程和目标发送线程。
3.如权利要求1所述的方法,其特征在于,所述通过所述目标接收处理线程对所述UDP数据进行处理,得到处理后的数据之后,还包括:
根据所述处理后的数据对应的应用层,对所述处理后的数据进行业务处理,获取目标数据;
通过所述目标发送线程向所述终端发送所述目标数据。
4.一种数据处理装置,其特征在于,包括:
接收模块,用于接收终端通过用户数据报协议UDP协议发送的UDP数据,其中,所述UDP数据包括UDP链接身份标识ID;
分配模块,用于根据所述UDP链接ID,从多个接收处理线程和多个发送线程中为所述UDP链接ID对应的所述UDP数据分配目标接收处理线程和目标发送线程;
处理模块,用于通过所述目标接收处理线程对所述UDP数据进行处理,得到处理后的数据;
所述分配模块,具体用于若所述UDP链接ID指示UDP链接为新链接,则从多个接收处理线程和多个发送线程中随机分配所述目标接收处理线程和所述目标发送线程;若所述UDP链接ID指示UDP链接为已有链接,则根据所述UDP链接ID以及预设算法,计算获取所述目标接收处理线程的标识和所述目标发送线程的标识;
所述分配模块,具体用于若所述UDP链接ID指示UDP链接为新链接,则根据预设算法、随机数、以及所述接收处理线程的数量,计算获取所述目标接收处理线程的ID,并确定所述目标发送线程的ID与所述目标接收处理线程的ID相同;
所述装置还包括:
获取模块,用于根据初始全局标识、所述目标接收处理线程的ID,为所述UDP链接ID赋值,获取所述UDP链接对应的新的UDP链接ID。
5.一种数据处理服务器,其特征在于,包括:处理器、存储器,所述存储器存储有所述处理器可执行的计算机程序,所述处理器执行所述计算机程序时实现上述权利要求1-3任一所述的一种数据处理方法。
6.一种存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被读取并执行时,实现上述权利要求1-3任一所述的一种数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010677837.5A CN111835770B (zh) | 2020-07-14 | 2020-07-14 | 一种数据处理方法、装置、服务器及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010677837.5A CN111835770B (zh) | 2020-07-14 | 2020-07-14 | 一种数据处理方法、装置、服务器及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111835770A CN111835770A (zh) | 2020-10-27 |
CN111835770B true CN111835770B (zh) | 2021-01-29 |
Family
ID=72922846
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010677837.5A Active CN111835770B (zh) | 2020-07-14 | 2020-07-14 | 一种数据处理方法、装置、服务器及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111835770B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113419869B (zh) * | 2021-08-25 | 2021-12-03 | 苏州浪潮智能科技有限公司 | 一种乱序数据的产生方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101882089A (zh) * | 2009-05-07 | 2010-11-10 | 中兴通讯股份有限公司 | 一种采用多线程处理业务会话应用的方法及装置 |
CN103248670A (zh) * | 2012-02-01 | 2013-08-14 | 塔塔咨询服务有限公司 | 计算机网络环境下的连接管理 |
CN109451541A (zh) * | 2018-12-21 | 2019-03-08 | 中国电子科技集团公司第三十研究所 | 一种无线网络环境下基于udp的数据传输速率自适应方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10033677B2 (en) * | 2015-06-11 | 2018-07-24 | International Business Machines Corporation | Tracking conversation threads among electronic communications |
CN109800070A (zh) * | 2019-01-02 | 2019-05-24 | 深圳壹账通智能科技有限公司 | 任务处理方法和系统 |
CN110753040B (zh) * | 2019-09-30 | 2022-02-22 | 迈普通信技术股份有限公司 | 一种请求处理的方法及装置 |
CN111367675A (zh) * | 2020-03-12 | 2020-07-03 | 苏州浪潮智能科技有限公司 | 一种线程调度方法、装置、设备及存储介质 |
-
2020
- 2020-07-14 CN CN202010677837.5A patent/CN111835770B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101882089A (zh) * | 2009-05-07 | 2010-11-10 | 中兴通讯股份有限公司 | 一种采用多线程处理业务会话应用的方法及装置 |
CN103248670A (zh) * | 2012-02-01 | 2013-08-14 | 塔塔咨询服务有限公司 | 计算机网络环境下的连接管理 |
CN109451541A (zh) * | 2018-12-21 | 2019-03-08 | 中国电子科技集团公司第三十研究所 | 一种无线网络环境下基于udp的数据传输速率自适应方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111835770A (zh) | 2020-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107241281B (zh) | 一种数据处理方法及其装置 | |
CN106034084B (zh) | 一种数据传输方法及装置 | |
US11889133B2 (en) | Burst traffic processing method, computer device and readable storage medium | |
CN108833450B (zh) | 一种实现服务器防攻击方法及装置 | |
CN108123866B (zh) | 消息传输方法及装置 | |
CN107579924B (zh) | 一种流量调拨方法和装置 | |
CN106302111B (zh) | 一种信息处理方法、终端及服务器 | |
CN108847981A (zh) | 分布式计算机云计算处理方法 | |
CN111541555A (zh) | 群聊优化方法及相关产品 | |
CN111835770B (zh) | 一种数据处理方法、装置、服务器及存储介质 | |
CN112398845B (zh) | 数据传输方法、数据传输装置、系统及电子设备 | |
EP4142258A1 (en) | Edge computing network, data transmission method and apparatus, device and storage medium | |
CN108830724B (zh) | 一种资源数据包处理方法及终端设备 | |
CN111861432B (zh) | 虚拟资源信息更新方法及装置、服务器及存储介质 | |
CN113055493B (zh) | 数据包处理方法、装置、系统、调度设备和存储介质 | |
CN114416275A (zh) | 一种实现多个管理客户端同步虚拟机状态的方法及系统 | |
CN113271336A (zh) | 基于dpdk的机器人中间件dds数据传输方法、电子设备及计算机可读存储介质 | |
CN110266814B (zh) | 传输方法及传输装置 | |
CN107483424B (zh) | 远程过程调用协议的处理方法和装置 | |
CN116755905B (zh) | 基于消息队列的数据交互方法、装置、设备及存储介质 | |
CN112131267A (zh) | 计数处理方法、装置、服务器和计数处理系统 | |
CN112311689A (zh) | 突发流量的分流方法、计算机设备及可读存储介质 | |
CN114143731A (zh) | 资源计费方法、mec管理系统和mec主机 | |
CN113747187B (zh) | 一种虚拟资源的处理方法及装置 | |
CN110868306B (zh) | 信息处理方法、装置、终端设备、服务器及存储介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP02 | Change in the address of a patent holder |
Address after: 100010 room 203-35, 2 / F, building 2, No.1 and 3, Qinglong Hutong, Dongcheng District, Beijing Patentee after: G-NET CLOUD SERVICE Co.,Ltd. Address before: Room 1102, Ninth Floor, Pengyuan International Building, Building 4, No. 1 Courtyard, Shangdi East Road, Haidian District, Beijing Patentee before: G-NET CLOUD SERVICE Co.,Ltd. |
|
CP02 | Change in the address of a patent holder |