CN110119307B - 数据处理请求的处理方法、装置、存储介质及电子装置 - Google Patents
数据处理请求的处理方法、装置、存储介质及电子装置 Download PDFInfo
- Publication number
- CN110119307B CN110119307B CN201810111838.6A CN201810111838A CN110119307B CN 110119307 B CN110119307 B CN 110119307B CN 201810111838 A CN201810111838 A CN 201810111838A CN 110119307 B CN110119307 B CN 110119307B
- Authority
- CN
- China
- Prior art keywords
- data processing
- request
- processing request
- target
- requests
- 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
-
- 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
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据处理请求的处理方法、装置、存储介质及电子装置。其中,该方法包括:获取并发的多个数据处理请求对应的运行参数,其中,运行参数包括:运行时间和运行带宽;按照运行时间从小到大的顺序确定多个数据处理请求中的每个数据处理请求的处理顺序,其中,在多个数据处理请求中,运行时间较小的数据处理请求被设置为优先于运行时间较大的数据处理请求被处理;在轮到处理多个数据处理请求中的目标数据处理请求、且目标数据处理请求对应的目标运行带宽满足目标运行条件的情况下,处理目标数据处理请求。本发明解决了数据处理请求的处理效率较低的技术问题。
Description
技术领域
本发明涉及通信领域,具体而言,涉及一种数据处理请求的处理方法、装置、存储介质及电子装置。
背景技术
随着计算机和互联网技术的迅猛发展,世界进入了信息和数据爆炸的时代。人们使用数据处理系统对接收到的数据处理请求进行处理,但往往接收到的数据处理请求是大规模并发的数据处理请求,对于这种情况,现有的处理机制是在接收到数据处理请求之后直接将接收到的请求与正在运行的请求一起处理,这就导致了数据处理请求对系统资源(例如:内存带宽)的竞争,严重影响了数据处理请求的处理效率。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种数据处理请求的处理方法、装置、存储介质及电子装置,以至少解决数据处理请求的处理效率较低的技术问题。
根据本发明实施例的一个方面,提供了一种数据处理请求的处理方法,包括:获取并发的多个数据处理请求对应的运行参数,其中,所述运行参数包括:运行时间和运行带宽,所述运行时间用于指示所述数据处理请求被处理时所消耗的时间,所述运行带宽用于指示数据处理请求被处理时所占用的内存带宽;按照所述运行时间从小到大的顺序确定所述多个数据处理请求中的每个数据处理请求的处理顺序,其中,在所述多个数据处理请求中,所述运行时间较小的数据处理请求被设置为优先于所述运行时间较大的数据处理请求被处理;在轮到处理所述多个数据处理请求中的目标数据处理请求、且所述目标数据处理请求对应的目标运行带宽满足目标运行条件的情况下,处理所述目标数据处理请求。
根据本发明实施例的另一方面,还提供了一种数据处理请求的处理装置,包括:获取模块,用于获取并发的多个数据处理请求对应的运行参数,其中,所述运行参数包括:运行时间和运行带宽,所述运行时间用于指示所述数据处理请求被处理时所消耗的时间,所述运行带宽用于指示数据处理请求被处理时所占用的内存带宽;第一确定模块,用于按照所述运行时间从小到大的顺序确定所述多个数据处理请求中的每个数据处理请求的处理顺序,其中,在所述多个数据处理请求中,所述运行时间较小的数据处理请求被设置为优先于所述运行时间较大的数据处理请求被处理;第一处理模块,用于在轮到处理所述多个数据处理请求中的目标数据处理请求、且所述目标数据处理请求对应的目标运行带宽满足目标运行条件的情况下,处理所述目标数据处理请求。
根据本发明实施例的另一方面,还提供了一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项中所述的方法。
根据本发明实施例的另一方面,还提供了一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行上述任一项中所述的方法。
在本发明实施例中,采用获取并发的多个数据处理请求对应的运行参数,其中,运行参数包括:运行时间和运行带宽,运行时间用于指示数据处理请求被处理时所消耗的时间,运行带宽用于指示数据处理请求被处理时所占用的内存带宽;按照运行时间从小到大的顺序确定多个数据处理请求中的每个数据处理请求的处理顺序,其中,在多个数据处理请求中,运行时间较小的数据处理请求被设置为优先于运行时间较大的数据处理请求被处理;在轮到处理多个数据处理请求中的目标数据处理请求、且目标数据处理请求对应的目标运行带宽满足目标运行条件的情况下,处理目标数据处理请求的方式,获取并发的多个数据处理请求对应的运行时间和运行带宽等运行参数,按照运行时间从小到大的顺序确定数据处理请求的处理顺序,当轮到处理目标数据处理请求且该目标数据处理请求对应的目标运行带宽满足目标运行条件时,对该目标数据处理请求进行处理,从而使得并发的多个数据处理请求可以在当前的运行环境满足其运行需求的情况下被处理,实现了对并发的数据处理请求的有效调度,避免了数据处理请求之间对资源的恶性竞争,进一步,多个数据处理请求中运行时间较小的数据处理请求被优先处理,可以有效减少整个处理过程各个数据处理请求的平均等候时间,从而提高了数据处理请求的处理效率,进而解决了数据处理请求的处理效率较低的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的数据处理请求的处理方法的示意图;
图2是根据本发明实施例的一种可选的数据处理请求的处理方法的应用环境示意图;
图3是根据本发明可选的实施方式的一种可选的数据处理请求的处理方法的示意图;
图4是根据本发明可选的实施方式的另一种可选的数据处理请求的处理方法的示意图;
图5是根据本发明实施例的一种可选的数据处理请求的处理装置的示意图;
图6是根据本发明实施例的一种可选的数据处理请求的处理方法的应用场景示意图;以及
图7是根据本发明实施例的一种可选的电子装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明实施例的一个方面,提供了一种数据处理请求的处理方法,如图1所示,该方法包括:
S102,获取并发的多个数据处理请求对应的运行参数,其中,运行参数包括:运行时间和运行带宽,运行时间用于指示数据处理请求被处理时所消耗的时间,运行带宽用于指示数据处理请求被处理时所占用的内存带宽;
S104,按照运行时间从小到大的顺序确定多个数据处理请求中的每个数据处理请求的处理顺序,其中,在多个数据处理请求中,运行时间较小的数据处理请求被设置为优先于运行时间较大的数据处理请求被处理;
S106,在轮到处理多个数据处理请求中的目标数据处理请求、且目标数据处理请求对应的目标运行带宽满足目标运行条件的情况下,处理目标数据处理请求。
可选地,在本实施例中,上述数据处理请求的处理方法可以应用于如图2所示的终端202、服务器204和网络206所构成的硬件环境中。如图2所示,终端202通过网络206与服务器204连接。服务器204用于从终端202获取并发的多个数据处理请求对应的运行参数,其中,运行参数包括:运行时间和运行带宽,运行时间用于指示数据处理请求被处理时所消耗的时间,运行带宽用于指示数据处理请求被处理时所占用的内存带宽,按照运行时间从小到大的顺序确定多个数据处理请求中的每个数据处理请求的处理顺序,其中,在多个数据处理请求中,运行时间较小的数据处理请求被设置为优先于运行时间较大的数据处理请求被处理,在轮到处理多个数据处理请求中的目标数据处理请求、且目标数据处理请求对应的目标运行带宽满足目标运行条件的情况下,处理目标数据处理请求。
可选地,在本实施例中,上述数据处理请求的处理方法可以但不限于应用于对并发的数据处理请求进行处理的场景中。其中,上述终端可以但不限于包括:手机、平板电脑、PC计算机、笔记本电脑、智能家居设备、智能穿戴设备等等。上述终端中可以安装有客户端,用户对客户端执行的操作可以作为数据处理请求被发送至服务器进行处理。上述客户端可以但不限于为各种类型的应用,例如,在线教育应用、即时通讯应用、社区空间应用、游戏应用、购物应用、浏览器应用、金融应用、多媒体应用、直播应用等。具体的,可以但不限于应用于在上述处理从即时通讯应用获取的并发的数据处理请求的场景中,或还可以但不限于应用于在上述处理从游戏应用获取的并发的数据处理请求的场景中,以提高并发的数据处理请求的处理效率。上述仅是一种示例,本实施例中对此不做任何限定。
可选地,在本实施例中,上述数据处理请求的处理方法可以但不限于应用于服务器侧。客户端发起的数据处理任务在服务器端可以被看做是一个数据处理请求,服务器负责处理这个请求并把处理结果返回给客户端。
可选地,在本实施例中,上述数据处理请求的处理方法可以但不限于应用于数据处理请求具有并发特性的系统中。如大型互联网公司通过图结构来组织已有的大量数据,分析师团队希望通过图结构来进行数据挖掘,则分析师团队中的每个分析师都可能对这一结构提
出图处理请求。上述数据处理请求的处理方法可以用来改善这一场景下并发的图处理请求的响应时间和执行效率。
可选地,在本实施例中,可选地,在本实施例中,上述数据处理请求的处理方法可以但不限于应用于共享内存架构下。共享内存架构是指从处理器角度出发,所有内存空间是共享的。
可选地,在本实施例中,上述数据处理请求所请求处理可以但不限于是图处理请求。其中,图可以是一种包括节点和边的数据结构,该数据结构可以用来描述很多真实世界的数据。比如在社交网络中,一个用户可以看做是一个节点,一个用户关注另一个用户可以看做是两个节点之间的边。图处理可以指在指定的图数据上执行指定的图算法(比如:最短路径算法、连通性算法等等)。
可选地,在本实施例中,数据处理请求对应的运行参数可以但不限于为数据处理请求的运行时特点,运行时特点可以但不限于包括运行时间、平均内存带宽消耗、最佳执行线程数等参数。
可见,通过上述步骤,获取并发的多个数据处理请求对应的运行时间和运行带宽等运行参数,按照运行时间从小到大的顺序确定数据处理请求的处理顺序,当轮到处理目标数据处理请求且该目标数据处理请求对应的目标运行带宽满足目标运行条件时,对该目标数据处理请求进行处理,从而使得并发的多个数据处理请求可以在当前的运行环境满足其运行需求的情况下被处理,实现了对并发的数据处理请求的有效调度,避免了数据处理请求之间对资源的恶性竞争,进一步,多个数据处理请求中运行时间较小的数据处理请求被优先处理,可以有效减少整个处理过程各个数据处理请求的平均等候时间,从而提高了数据处理请求的处理效率,进而解决了数据处理请求的处理效率较低的技术问题。
作为一种可选的方案,在轮到处理多个数据处理请求中的目标数据处理请求、且目标数据处理请求对应的目标运行带宽满足目标运行条件的情况下,处理目标数据处理请求包括:
S1,在检测到多个数据处理请求中的第一数据处理请求开始被处理的情况下,确定出轮到多个数据处理请求中的第二数据处理请求被处理,并检测第二数据处理请求对应的目标运行带宽是否满足目标运行条件;
S2,在第二数据处理请求对应的目标运行带宽满足目标运行条件的情况下,开始处理第二数据处理请求,并确定出轮到多个数据处理请求中的第三数据处理请求被处理;
其中,第一数据处理请求、第二数据处理请求和第三数据处理请求三者的处理顺序相邻,且第一数据处理请求的处理顺序优先于第二数据处理请求,第二数据处理请求的处理顺序优先于第三数据处理请求。
可选地,在本实施例中,并发的多个数据处理请求按照运行时间从小到达排列成队列,运行时间较小的数据处理请求位于队列头部,运行时系统从队列头部取出数据处理请求作为目标数据处理请求,并检测该目标数据处理请求的对应的目标运行带宽是否满足目标运行条件,如果满足,则开始处理该目标数据处理请求,并从数据处理请求队列当前的头部取出下一个数据处理请求作为新的目标数据处理请求,检测其对应的目标运行带宽是否满足目标运行条件,以此类推。
在一个可选的实施方式中,如图3所示,获取到并发的多个数据处理请求包括请求1、请求2、请求3……请求N,按照运行时间从小到大的顺序确定多个数据处理请求中的每个数据处理请求的处理顺序为请求1、请求2、请求3……请求N,首先轮到请求1被处理,检测请求1对应的目标运行带宽满足目标运行条件,如果满足,则开始处理请求1,并确定轮到请求2被处理,检测请求2对应的目标运行带宽满足目标运行条件,如果满足,则开始处理请求2,并确定轮到请求3被处理,检测请求3对应的目标运行带宽满足目标运行条件,以此类推。
作为一种可选的方案,在确定出轮到所述多个数据处理请求中的第二数据处理请求被处理,并检测所述第二数据处理请求对应的目标运行带宽是否满足目标运行条件之后,还包括:
S1,在第二数据处理请求对应的目标运行带宽不满足目标运行条件的情况下,在第一数据处理请求被处理完成之后,检测第二数据处理请求对应的目标运行带宽是否满足目标运行条件;
S2,在第二数据处理请求对应的目标运行带宽满足目标运行条件的情况下,开始处理第二数据处理请求,并确定出轮到第三数据处理请求被处理。
可选地,在本实施例中,如果确定出轮到一个数据处理请求被处理,却检测到该数据处理请求对应的目标运行带宽不满足目标运行条件,则在正在处理的一个数据处理请求被处理完成之后,再继续检测该数据处理请求对应的目标运行带宽是否满足目标运行条件,如果还是不满足,则继续等待正在处理的其他数据处理请求完成处理,释放出内存带宽后,再检测该数据处理请求对应的目标运行带宽是否满足目标运行条件,直到检测到目标运行带宽是否满足目标运行条件后,开始处理该数据处理请求。
在上述可选的实施方式中,如图4所示,当轮到请求15被处理时,检测到请求15对应的目标运行带宽不满足目标运行条件,则在当前正在被处理的请求12、请求13和请求14中的请求12被处理完成后,再检测请求15对应的目标运行带宽是否满足目标运行条件,如果满足,则开始处理请求15,如果还不满足,则等到请求13被处理完成后,检测请求15对应的目标运行带宽是否满足目标运行条件,直至释放的内存带宽使得请求15对应的目标运行带宽满足目标运行条件时,开始处理请求15。
作为一种可选的方案,通过以下步骤来检测目标运行带宽是否满足目标运行条件包括:
S1,从目标数据处理请求对应的目标运行参数中获取目标运行带宽;
S2,检测系统的当前内存消耗,其中,当前内存消耗用于指示处理多个数据处理请求的系统当前被占用的内存带宽;
S3,在目标运行带宽与当前内存消耗的和小于系统的目标内存消耗的情况下,确定目标运行带宽满足目标运行条件。
可选地,在本实施例中,目标运行条件可以但不限于为目标运行带宽与当前内存消耗的和小于系统的目标内存消耗,其中,系统的目标内存消耗可以但不限于为系统的内存消耗上限。
可选地,在本实施例中,目标运行条件可以但不限于为目标运行带宽小于系统剩余的内存带宽。
可选地,在本实施例中,目标运行带宽和系统的当前内存消耗可以但不限于是通过读取处理器中集成内存控制器中性能计数器的读数获取到的。
作为一种可选的方案,处理所述目标数据处理请求包括:
S1,获取目标运行参数中携带的目标数据处理请求的目标线程数,其中,目标线程数用于指示处理目标数据处理请求的线程的数量;
S2,在系统中以目标线程数处理目标数据处理请求。
可选地,在本实施例中,目标数据处理请求对应的运行参数中还可以携带有目标线程数,该目标线程数可以但不限于是处理该请求的最佳执行线程数。通过在系统中以该最佳执行线程数处理目标数据处理请求以达到高效处理数据处理请求的目的。
作为一种可选的方案,在分别获取并发的多个数据处理请求对应的运行参数之前,包括:
S1,接收待处理的数据处理请求;
S2,将数据处理请求的接收时间落入多个目标时间段中的同一个目标时间段内的数据处理请求划分为一个数据处理请求集合,得到多个数据处理请求集合;
S3,按照多个数据处理请求集合对应的目标时间段的时间顺序,提取目标数据处理请求集合,并将目标数据处理请求集合中的数据处理请求确定为并发的多个数据处理请求。
可选地,在本实施例中,对于接收到的大量数据处理请求,可以按照接收的时间段对其进行分流,将处于同一目标时间段内的数据处理请求作为并发的数据处理请求。在对数据处理请求进行处理时,按照目标时间段的时间顺序提取数据处理请求,在一个目标时间段内的数据处理请求均处理完成后,再提取下一个目标时间段的数据处理请求进行处理。
可选地,在本实施例中,可以但不限于通过以下方式获取数据处理请求对应的运行参数:对待处理的数据处理请求进行分类,得到多个请求类型的待处理的数据处理请求,从多个请求类型中每个请求类型的待处理的数据处理请求中提取目标数量的数据处理请求作为每个请求类型的特征数据处理请求,处理每个请求类型的特征数据处理请求,并检测每个请求类型的特征数据处理请求的特征运行参数,将每个请求类型的特征运行参数确定为每个请求类型的数据处理请求对应的运行参数,将具有对应关系的请求类型和特征运行参数存储在数据库中。
可选地,在本实施例中,可以但不限于将获取运行参数的阶段称为“离线采样”阶段。在“离线采样”阶段,通过离线运行每种请求类型中具有代表性的特征数据处理请求,来确定一类数据处理请求对应的运行参数。
可选地,在本实施例中,除了采用离线采样的方式获取运行参数之外,还可以采用机器学习等方式对每个数据处理请求对应的运行参数进行预测。
可选地,在本实施例中,可以但不限于通过以下方式从数据库中获取运行参数:确定并发的多个数据处理请求的每个数据处理请求对应的目标请求类型,从数据库中记录的具有对应关系的请求类型和特征运行参数中获取目标请求类型对应的目标特征运行参数,将并发的多个数据处理请求的每个数据处理请求对应的目标请求类型对应的目标特征运行参数确定为并发的多个数据处理请求对应的运行参数。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
根据本发明实施例的另一个方面,还提供了一种用于实施上述数据处理请求的处理方法的数据处理请求的处理装置,如图5所示,该装置包括:
1)获取模块52,用于获取并发的多个数据处理请求对应的运行参数,其中,运行参数包括:运行时间和运行带宽,运行时间用于指示数据处理请求被处理时所消耗的时间,运行带宽用于指示数据处理请求被处理时所占用的内存带宽;
2)第一确定模块54,用于按照运行时间从小到大的顺序确定多个数据处理请求中的每个数据处理请求的处理顺序,其中,在多个数据处理请求中,运行时间较小的数据处理请求被设置为优先于运行时间较大的数据处理请求被处理;
3)第一处理模块56,用于在轮到处理多个数据处理请求中的目标数据处理请求、且目标数据处理请求对应的目标运行带宽满足目标运行条件的情况下,处理目标数据处理请求。
可选地,在本实施例中,上述数据处理请求的处理装置可以应用于如图2所示的终端202、服务器204和网络206所构成的硬件环境中。如图2所示,终端202通过网络206与服务器204连接。服务器204用于从终端202获取并发的多个数据处理请求对应的运行参数,其中,运行参数包括:运行时间和运行带宽,运行时间用于指示数据处理请求被处理时所消耗的时间,运行带宽用于指示数据处理请求被处理时所占用的内存带宽,按照运行时间从小到大的顺序确定多个数据处理请求中的每个数据处理请求的处理顺序,其中,在多个数据处理请求中,运行时间较小的数据处理请求被设置为优先于运行时间较大的数据处理请求被处理,在轮到处理多个数据处理请求中的目标数据处理请求、且目标数据处理请求对应的目标运行带宽满足目标运行条件的情况下,处理目标数据处理请求。
可选地,在本实施例中,上述数据处理请求的处理装置可以但不限于应用于对并发的数据处理请求进行处理的场景中。其中,上述终端可以但不限于包括:手机、平板电脑、PC计算机、笔记本电脑、智能家居设备、智能穿戴设备等等。上述终端中可以安装有客户端,用户对客户端执行的操作可以作为数据处理请求被发送至服务器进行处理。上述客户端可以但不限于为各种类型的应用,例如,在线教育应用、即时通讯应用、社区空间应用、游戏应用、购物应用、浏览器应用、金融应用、多媒体应用、直播应用等。具体的,可以但不限于应用于在上述处理从即时通讯应用获取的并发的数据处理请求的场景中,或还可以但不限于应用于在上述处理从游戏应用获取的并发的数据处理请求的场景中,以提高并发的数据处理请求的处理效率。上述仅是一种示例,本实施例中对此不做任何限定。
可选地,在本实施例中,上述数据处理请求的处理装置可以但不限于应用于服务器侧。客户端发起的数据处理任务在服务器端可以被看做是一个数据处理请求,服务器负责处理这个请求并把处理结果返回给客户端。
可选地,在本实施例中,上述数据处理请求的处理装置可以但不限于应用于数据处理请求具有并发特性的系统中。如大型互联网公司通过图结构来组织已有的大量数据,分析师团队希望通过图结构来进行数据挖掘,则分析师团队中的每个分析师都可能对这一结构提出图处理请求。上述数据处理请求的处理方法可以用来改善这一场景下并发的图处理请求的响应时间和执行效率。
可选地,在本实施例中,可选地,在本实施例中,上述数据处理请求的处理装置可以但不限于应用于共享内存架构下。共享内存架构是指从处理器角度出发,所有内存空间是共享的。
可选地,在本实施例中,上述数据处理请求所请求处理可以但不限于是图处理请求。其中,图可以是一种包括节点和边的数据结构,该数据结构可以用来描述很多真实世界的数据。比如在社交网络中,一个用户可以看做是一个节点,一个用户关注另一个用户可以看做是两个节点之间的边。图处理可以指在指定的图数据上执行指定的图算法(比如:最短路径算法、连通性算法等等)。
可选地,在本实施例中,数据处理请求对应的运行参数可以但不限于为数据处理请求的运行时特点,运行时特点可以但不限于包括运行时间、平均内存带宽消耗、最佳执行线程数等参数。
可见,通过上述装置,获取并发的多个数据处理请求对应的运行时间和运行带宽等运行参数,按照运行时间从小到大的顺序确定数据处理请求的处理顺序,当轮到处理目标数据处理请求且该目标数据处理请求对应的目标运行带宽满足目标运行条件时,对该目标数据处理请求进行处理,从而使得并发的多个数据处理请求可以在当前的运行环境满足其运行需求的情况下被处理,实现了对并发的数据处理请求的有效调度,避免了数据处理请求之间对资源的恶性竞争,进一步,多个数据处理请求中运行时间较小的数据处理请求被优先处理,可以有效减少整个处理过程各个数据处理请求的平均等候时间,从而提高了数据处理请求的处理效率,进而解决了数据处理请求的处理效率较低的技术问题。
作为一种可选的方案,第一处理模块包括:
1)第一处理单元,用于在检测到多个数据处理请求中的第一数据处理请求开始被处理的情况下,确定出轮到多个数据处理请求中的第二数据处理请求被处理,并检测第二数据处理请求对应的目标运行带宽是否满足目标运行条件;
2)第二处理单元,用于在第二数据处理请求对应的目标运行带宽满足目标运行条件的情况下,开始处理第二数据处理请求,并确定出轮到多个数据处理请求中的第三数据处理请求被处理;
其中,第一数据处理请求、第二数据处理请求和第三数据处理请求三者的处理顺序相邻,且第一数据处理请求的处理顺序优先于第二数据处理请求,第二数据处理请求的处理顺序优先于第三数据处理请求。
可选地,在本实施例中,并发的多个数据处理请求按照运行时间从小到达排列成队列,运行时间较小的数据处理请求位于队列头部,运行时系统从队列头部取出数据处理请求作为目标数据处理请求,并检测该目标数据处理请求的对应的目标运行带宽是否满足目标运行条件,如果满足,则开始处理该目标数据处理请求,并从数据处理请求队列当前的头部取出下一个数据处理请求作为新的目标数据处理请求,检测其对应的目标运行带宽是否满足目标运行条件,以此类推。
在一个可选的实施方式中,如图3所示,获取到并发的多个数据处理请求包括请求1、请求2、请求3……请求N,按照运行时间从小到大的顺序确定多个数据处理请求中的每个数据处理请求的处理顺序为请求1、请求2、请求3……请求N,首先轮到请求1被处理,检测请求1对应的目标运行带宽满足目标运行条件,如果满足,则开始处理请求1,并确定轮到请求2被处理,检测请求2对应的目标运行带宽满足目标运行条件,如果满足,则开始处理请求2,并确定轮到请求3被处理,检测请求3对应的目标运行带宽满足目标运行条件,以此类推。
作为一种可选的方案,第一处理模块还包括:
1)第三处理单元,用于在第二数据处理请求对应的目标运行带宽不满足目标运行条件的情况下,在第一数据处理请求被处理完成之后,检测第二数据处理请求对应的目标运行带宽是否满足目标运行条件;
2)第四处理单元,用于在第二数据处理请求对应的目标运行带宽满足目标运行条件的情况下,开始处理第二数据处理请求,并确定出轮到第三数据处理请求被处理。
可选地,在本实施例中,如果确定出轮到一个数据处理请求被处理,却检测到该数据处理请求对应的目标运行带宽不满足目标运行条件,则在正在处理的一个数据处理请求被处理完成之后,再继续检测该数据处理请求对应的目标运行带宽是否满足目标运行条件,如果还是不满足,则继续等待正在处理的其他数据处理请求完成处理,释放出内存带宽后,再检测该数据处理请求对应的目标运行带宽是否满足目标运行条件,直到检测到目标运行带宽是否满足目标运行条件后,开始处理该数据处理请求。
在上述可选的实施方式中,如图4所示,当轮到请求15被处理时,检测到请求15对应的目标运行带宽不满足目标运行条件,则在当前正在被处理的请求12、请求13和请求14中的请求12被处理完成后,再检测请求15对应的目标运行带宽是否满足目标运行条件,如果满足,则开始处理请求15,如果还不满足,则等到请求13被处理完成后,检测请求15对应的目标运行带宽是否满足目标运行条件,直至释放的内存带宽使得请求15对应的目标运行带宽满足目标运行条件时,开始处理请求15。
作为一种可选的方案,上述装置还包括检测模块,检测模块用于通过以下步骤来检测目标运行带宽是否满足目标运行条件:
步骤1,从目标数据处理请求对应的目标运行参数中获取目标运行带宽;
步骤2,检测系统的当前内存消耗,其中,当前内存消耗用于指示处理多个数据处理请求的系统当前被占用的内存带宽;
步骤3,在目标运行带宽与当前内存消耗的和小于系统的目标内存消耗的情况下,确定目标运行带宽满足目标运行条件。
可选地,在本实施例中,目标运行条件可以但不限于为目标运行带宽与当前内存消耗的和小于系统的目标内存消耗,其中,系统的目标内存消耗可以但不限于为系统的内存消耗上限。
可选地,在本实施例中,目标运行条件可以但不限于为目标运行带宽小于系统剩余的内存带宽。
可选地,在本实施例中,目标运行带宽和系统的当前内存消耗可以但不限于是通过读取处理器中集成内存控制器中性能计数器的读数获取到的。
作为一种可选的方案,第一处理模块包括:
1)第一获取单元,用于获取目标运行参数中携带的目标数据处理请求的目标线程数,其中,目标线程数用于指示处理目标数据处理请求的线程的数量;
2)第五处理单元,用于在系统中以目标线程数处理目标数据处理请求。
可选地,在本实施例中,目标数据处理请求对应的运行参数中还可以携带有目标线程数,该目标线程数可以但不限于是处理该请求的最佳执行线程数。通过在系统中以该最佳执行线程数处理目标数据处理请求以达到高效处理数据处理请求的目的。
作为一种可选的方案,上述装置还包括:
1)接收模块,用于接收待处理的数据处理请求;
2)划分模块,用于将数据处理请求的接收时间落入多个目标时间段中的同一个目标时间段内的数据处理请求划分为一个数据处理请求集合,得到多个数据处理请求集合;
3)第一提取模块,用于按照多个数据处理请求集合对应的目标时间段的时间顺序,提取目标数据处理请求集合,并将目标数据处理请求集合中的数据处理请求确定为并发的多个数据处理请求。
可选地,在本实施例中,对于接收到的大量数据处理请求,可以按照接收的时间段对其进行分流,将处于同一目标时间段内的数据处理请求作为并发的数据处理请求。在对数据处理请求进行处理时,按照目标时间段的时间顺序提取数据处理请求,在一个目标时间段内的数据处理请求均处理完成后,再提取下一个目标时间段的数据处理请求进行处理。
可选地,在本实施例中,上述装置还包括:分类模块,用于对待处理的数据处理请求进行分类,得到多个请求类型的待处理的数据处理请求;第二提取模块,用于从多个请求类型中每个请求类型的待处理的数据处理请求中提取目标数量的数据处理请求作为每个请求类型的特征数据处理请求;第二处理模块,用于处理每个请求类型的特征数据处理请求,并检测每个请求类型的特征数据处理请求的特征运行参数;第二确定模块,用于将每个请求类型的特征运行参数确定为每个请求类型的数据处理请求对应的运行参数;存储模块,用于将具有对应关系的请求类型和特征运行参数存储在数据库中。
可选地,在本实施例中,可以但不限于将获取运行参数的阶段称为“离线采样”阶段。在“离线采样”阶段,通过离线运行每种请求类型中具有代表性的特征数据处理请求,来确定一类数据处理请求对应的运行参数。
可选地,在本实施例中,除了采用离线采样的方式获取运行参数之外,还可以采用机器学习等方式对每个数据处理请求对应的运行参数进行预测。
可选地,在本实施例中,获取模块包括:第一确定单元,用于确定并发的多个数据处理请求的每个数据处理请求对应的目标请求类型;第二获取单元,用于从数据库中记录的具有对应关系的请求类型和特征运行参数中获取目标请求类型对应的目标特征运行参数;第二确定单元,用于将并发的多个数据处理请求的每个数据处理请求对应的目标请求类型对应的目标特征运行参数确定为并发的多个数据处理请求对应的运行参数。
本发明实施例的应用环境可以但不限于参照上述实施例中的应用环境,本实施例中对此不再赘述。本发明实施例提供了用于实施上述数据处理请求的处理方法的一种可选的具体应用示例。
作为一种可选的实施例,上述数据处理请求的处理方法可以但不限于应用于如图6所示的数据处理请求的处理的场景中。在本场景中,提供了一种基于共享内存架构的大规模图处理请求的调度器,通过离线采样与在线监测关键资源的使用,减少了不同请求间的资源竞争,提高了并发图处理请求的执行效率和响应时间。
在离线采样阶段,使用请求数据库存储每个请求的类型和运行时特点,并将未加入数据库的请求在运行采样后添加进数据库。这一技术为调度器提供了运行时调度所需的运行参数。在线监测阶段,使用Intel平台集成内存控制器中的性能计数器获取图处理请求在执行时的内存带宽使用情况,为调度器提供调度所需系统内存信息。采用实时调度器根据前两者提供的数据将并发请求重新排序以提高请求响应时间,并根据离线和实时数据控制不同请求间对内存资源的竞争。
在本实施例中,通过离线采样技术获得图处理请求的具体运行时特点,解决了图处理应用种类多带来的性能难以预测的问题。通过在线监测关键资源使用情况的方法获得了低成本、高精确度的内存带宽使用信息,使调度器可以更好地调度任务。通过实时调度器重新排序、控制请求对资源竞争改善了并发图处理请求的响应时间和执行效率。
如图6所示,主要通过三个模块实现图处理请求的调度:实时调度器(CongraScheduler),负载分析器(Workload profiler),资源监控器(Resource monitor)。该模块先将输入的所有图处理请求按照时间顺序存储到缓存中,然后以固定时间间隔一次处理每个间隔内的请求。之后调度器将查询Workload profiler来获得每个请求的运行时特点。调度器随后把这些请求按照运行时间从小到大排序,来获得重新排序的一个队列。调度器每次判断队列头部的请求是否可以运行;如果可以,该请求将被取出队列头部并处理,否则将等待直到可以运行再处理这一请求。调度器判断请求是否可以运行的标准是:如果当前请求内存带宽需求加上目前系统的内存带宽消耗量(读数由Resource monitor提供)大于系统内存带宽的上限,则认为不可以运行;否则可以运行。Workload profiler采取了上述“离线采样”技术,离线阶段获得的运行时特点将被存储在数据库中,并由该模块在运行时提供给Congra Scheduler。如果出现接收到的请求没有被采样过的情况,则该模块会在线完成采样的过程,并将运行时特点加入数据库中。Resource monitor采用上述“在线监测”技术,即通过访问Intel处理器中集成内存控制器(integrated memory controller)中的性能计数器(performance counter)来获得实时、准确的内存带宽使用量读数。
下面对图6中其他模块功能进行说明和描述:
请求缓存器(Ligra query buffer):按照请求到达的时间缓存输入的图处理请求。
排序单元(Reorder unit):将某一时间间隔内的所有请求重新排序,形成Queryqueue这一请求队列。
竞争控制器(Contention control):每次从Query queue的头部读取请求,如果可以运行则执行该请求,将头部的请求出队;否则等待直到可以运行该请求为止。
执行单元(Execution unit):使用Ligra进程的方式运行所有被允许运行的请求。
分析器(Profiler):位于Workload profiler中,一旦收到的请求没有被采样,则由该模块进行在线采样,并将运行时特点以分析表(Profiling Table)的形式加入请求数据库(Query database)中。
在一个可选的实施方式中,提供了对数据处理请求进行调度的过程,整个调度过程包括如下步骤:步骤1,(对应Ligra query buffer模块)并发的图处理请求通过到达时间被划分到不同的时间片段内,调度器会对处于同一时间片段内的所有请求进行调度。步骤2,(对应Reorder unit模块)调度器通过查询请求数据库得到每个请求的运行时特点,如果当前请求不在数据库中则执行该请求进行采样,将所得运行时特点加入数据库(该步骤发生Congra Scheduler和Workload profiler间的通信,前者向后者发送请求的信息,后者向前者发送每个请求的运行时特点)。步骤3,(对应Query Queue)调度器将所有请求按预期运行时间由短到长排序,得到待执行请求队列。步骤4,(对应Contention Control)从队列头部取出任务,如果该任务平均使用的内存带宽+当前系统实际被使用的内存带宽(通过访问Resource monitor来得知真实带宽的使用量)<内存带宽上限,则以最优线程数量处理该请求;否则等待直到正在执行的任务结束并释放足够的内存带宽。重复步骤4直到待执行请求队列为空。步骤5,转到步骤1(完整的调度过程发生在Congra Scheduler中,其余两个模块都是为它提供调度信息的)。
在本实施例中,通过上述调度器对数据处理请求的调度能够提升并发图处理请求的响应时间,与已有技术对比可以提高并发情况下请求的处理效率。
根据本发明实施例的又一个方面,还提供了一种用于实施上述数据处理请求的处理的电子装置,如图7所示,该电子装置包括:一个或多个(图中仅示出一个)处理器702、存储器704、传感器706、编码器708以及传输装置710,该存储器中存储有计算机程序,该处理器被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述电子装置可以位于计算机网络的多个网络设备中的至少一个网络设备。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,获取并发的多个数据处理请求对应的运行参数,其中,运行参数包括:运行时间和运行带宽,运行时间用于指示数据处理请求被处理时所消耗的时间,运行带宽用于指示数据处理请求被处理时所占用的内存带宽;
S2,按照运行时间从小到大的顺序确定多个数据处理请求中的每个数据处理请求的处理顺序,其中,在多个数据处理请求中,运行时间较小的数据处理请求被设置为优先于运行时间较大的数据处理请求被处理;
S3,在轮到处理多个数据处理请求中的目标数据处理请求、且目标数据处理请求对应的目标运行带宽满足目标运行条件的情况下,处理目标数据处理请求。
可选地,本领域普通技术人员可以理解,图7所示的结构仅为示意,电子装置也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图7其并不对上述电子装置的结构造成限定。例如,电子装置还可包括比图7中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图7所示不同的配置。
其中,存储器704可用于存储软件程序以及模块,如本发明实施例中的数据处理请求的处理方法和装置对应的程序指令/模块,处理器702通过运行存储在存储器704内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的目标组件的控制方法。存储器704可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器704可进一步包括相对于处理器702远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
上述的传输装置710用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置710包括一个网络适配器(NetworkInterface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置710为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
其中,具体地,存储器702用于存储应用程序。
本发明的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取并发的多个数据处理请求对应的运行参数,其中,运行参数包括:运行时间和运行带宽,运行时间用于指示数据处理请求被处理时所消耗的时间,运行带宽用于指示数据处理请求被处理时所占用的内存带宽;
S2,按照运行时间从小到大的顺序确定多个数据处理请求中的每个数据处理请求的处理顺序,其中,在多个数据处理请求中,运行时间较小的数据处理请求被设置为优先于运行时间较大的数据处理请求被处理;
S3,在轮到处理多个数据处理请求中的目标数据处理请求、且目标数据处理请求对应的目标运行带宽满足目标运行条件的情况下,处理目标数据处理请求。
可选地,存储介质还被设置为存储用于执行上述实施例中的方法中所包括的步骤的计算机程序,本实施例中对此不再赘述。
可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (7)
1.一种数据处理请求的处理方法,其特征在于,包括:
对接收到的待处理的数据处理请求进行分类;
从分类得到的多个请求类型中每个请求类型的所述待处理的数据处理请求中提取目标数量的数据处理请求作为每个请求类型的特征数据处理请求;
检测每个请求类型的所述特征数据处理请求的特征运行参数,并将每个请求类型的所述特征运行参数确定为每个请求类型的数据处理请求对应的运行参数;
将所述待处理的数据处理请求的接收时间落入多个目标时间段中的同一个目标时间段内的所述待处理的数据处理请求划分为一个数据处理请求集合,得到多个数据处理请求集合;
按照所述多个数据处理请求集合对应的目标时间段的时间顺序,提取目标数据处理请求集合,并将所述目标数据处理请求集合中的数据处理请求确定为并发的多个数据处理请求;
根据所述并发的多个数据处理请求中的每个数据处理请求对应的各个请求类型,获取所述并发的多个数据处理请求中的每个数据处理请求各自对应的运行参数,其中,所述运行参数包括:运行时间、运行带宽和执行线程数,所述运行时间用于指示每个数据处理请求被处理时所消耗的时间,所述运行带宽用于指示每个数据处理请求被处理时所占用的内存带宽,所述执行线程数用于指示每个数据处理请求被处理时所用线程的数量;
按照所述运行时间从小到大的顺序确定所述并发的多个数据处理请求中的每个数据处理请求的处理顺序,其中,在所述并发的多个数据处理请求中,所述运行时间较小的数据处理请求被设置为优先于所述运行时间较大的数据处理请求被处理;
在检测到所述并发的多个数据处理请求中的第一数据处理请求开始被处理的情况下,确定出轮到所述并发的多个数据处理请求中的第二数据处理请求被处理,并从所述第二数据处理请求对应的目标运行参数中获取目标运行带宽;
检测系统的当前内存消耗,其中,所述当前内存消耗用于指示处理所述并发的多个数据处理请求的所述系统当前被占用的内存带宽;
在所述目标运行带宽与所述当前内存消耗的和大于或等于所述系统的目标内存消耗的情况下,在所述第一数据处理请求被处理完成之后,检测所述目标运行带宽与所述当前内存消耗的和是否小于所述系统的所述目标内存消耗;
在所述目标运行带宽与所述当前内存消耗的和小于所述系统的所述目标内存消耗的情况下,在所述系统中以所述目标运行参数中的目标执行线程数处理所述第二数据处理请求,并确定出轮到所述并发的多个数据处理请求中的第三数据处理请求被处理;
其中,所述第一数据处理请求、所述第二数据处理请求和所述第三数据处理请求三者的处理顺序相邻,且所述第一数据处理请求的处理顺序优先于所述第二数据处理请求,所述第二数据处理请求的处理顺序优先于所述第三数据处理请求。
2.根据权利要求1所述的方法,其特征在于,在获取所述并发的多个数据处理请求中的每个数据处理请求各自对应的运行参数之后,还包括:
获取所述目标运行参数中携带的所述第二数据处理请求的所述目标执行线程数。
3.根据权利要求1所述的方法,其特征在于,在将每个请求类型的所述特征运行参数确定为每个请求类型的数据处理请求对应的运行参数之后,所述方法还包括:
将具有对应关系的请求类型和运行参数存储在数据库中。
4.根据权利要求3所述的方法,其特征在于,在获取所述并发的多个数据处理请求中的每个数据处理请求各自对应的运行参数之前,还包括:
从所述数据库中记录的具有对应关系的请求类型和运行参数中获取每个请求类型的数据处理请求对应的运行参数。
5.一种数据处理请求的处理装置,其特征在于,包括:
分类模块,用于对接收到的待处理的数据处理请求进行分类;
第二提取模块,用于从分类得到的多个请求类型中每个请求类型的所述待处理的数据处理请求中提取目标数量的数据处理请求作为每个请求类型的特征数据处理请求;
第二处理模块,用于检测每个请求类型的所述特征数据处理请求的特征运行参数;
第二确定模块,用于将每个请求类型的所述特征运行参数确定为每个请求类型的数据处理请求对应的运行参数;
划分模块,用于将所述待处理的数据处理请求的接收时间落入多个目标时间段中的同一个目标时间段内的所述待处理的数据处理请求划分为一个数据处理请求集合,得到多个数据处理请求集合;
第一提取模块,用于按照所述多个数据处理请求集合对应的目标时间段的时间顺序,提取目标数据处理请求集合,并将所述目标数据处理请求集合中的数据处理请求确定为并发的多个数据处理请求;
获取模块,用于根据所述并发的多个数据处理请求中的每个数据处理请求对应的各个请求类型,获取所述并发的多个数据处理请求中的每个数据处理请求各自对应的运行参数,其中,所述运行参数包括:运行时间、运行带宽和执行线程数,所述运行时间用于指示每个数据处理请求被处理时所消耗的时间,所述运行带宽用于指示每个数据处理请求被处理时所占用的内存带宽,所述执行线程数用于指示每个数据处理请求被处理时所用线程的数量;
第一确定模块,用于按照所述运行时间从小到大的顺序确定所述并发的多个数据处理请求中的每个数据处理请求的处理顺序,其中,在所述并发的多个数据处理请求中,所述运行时间较小的数据处理请求被设置为优先于所述运行时间较大的数据处理请求被处理;
第一处理模块包括:第一处理单元,用于在检测到所述多个数据处理请求中的第一数据处理请求开始被处理的情况下,确定出轮到所述多个数据处理请求中的第二数据处理请求被处理,并检测所述第二数据处理请求对应的目标运行带宽是否满足目标运行条件,其中,检测所述第二数据处理请求对应的所述目标运行带宽是否满足所述目标运行条件包括:从所述第二数据处理请求对应的所述目标运行参数中获取所述目标运行带宽;检测系统的当前内存消耗,其中,所述当前内存消耗用于指示处理所述多个数据处理请求的所述系统当前被占用的内存带宽;在所述目标运行带宽与所述当前内存消耗的和小于所述系统的目标内存消耗的情况下,确定所述目标运行带宽满足所述目标运行条件;
所述第一处理模块还包括:第三处理单元,用于在所述第二数据处理请求对应的所述目标运行带宽不满足所述目标运行条件的情况下,在所述第一数据处理请求被处理完成之后,检测所述第二数据处理请求对应的所述目标运行带宽是否满足所述目标运行条件;第二处理单元,用于在所述第二数据处理请求对应的所述目标运行带宽满足所述目标运行条件的情况下,开始处理所述第二数据处理请求,并确定出轮到所述多个数据处理请求中的第三数据处理请求被处理;其中,所述第一数据处理请求、所述第二数据处理请求和所述第三数据处理请求三者的处理顺序相邻,且所述第一数据处理请求的处理顺序优先于所述第二数据处理请求,所述第二数据处理请求的处理顺序优先于所述第三数据处理请求;所述第二数据处理请求按照以下方式处理:在所述系统中以所述第二数据处理请求对应的所述目标运行参数中的目标执行线程数处理。
6.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至4任一项中所述的方法。
7.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至4任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810111838.6A CN110119307B (zh) | 2018-02-05 | 2018-02-05 | 数据处理请求的处理方法、装置、存储介质及电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810111838.6A CN110119307B (zh) | 2018-02-05 | 2018-02-05 | 数据处理请求的处理方法、装置、存储介质及电子装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110119307A CN110119307A (zh) | 2019-08-13 |
CN110119307B true CN110119307B (zh) | 2022-09-13 |
Family
ID=67519284
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810111838.6A Active CN110119307B (zh) | 2018-02-05 | 2018-02-05 | 数据处理请求的处理方法、装置、存储介质及电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110119307B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111209209A (zh) * | 2020-01-15 | 2020-05-29 | 上海知白智能科技有限公司 | 测试装置 |
CN111258555A (zh) * | 2020-01-15 | 2020-06-09 | 上海知白智能科技有限公司 | 软件实现装置 |
CN113537837B (zh) * | 2021-08-16 | 2024-05-24 | 中国南方电网有限责任公司 | 自动排序方法、装置及计算机设备 |
CN114416325B (zh) * | 2022-04-02 | 2022-08-26 | 深圳新闻网传媒股份有限公司 | 基于智能分析的批量任务计算系统 |
CN115037802B (zh) * | 2022-06-02 | 2024-03-08 | 北京百度网讯科技有限公司 | 一种请求处理方法、装置、电子设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103501247A (zh) * | 2013-09-25 | 2014-01-08 | 天脉聚源(北京)传媒科技有限公司 | 一种高并发请求处理方法及装置 |
CN106021045A (zh) * | 2016-05-11 | 2016-10-12 | 深圳市国鑫恒宇科技有限公司 | 一种linux系统下服务器硬盘IO性能的测试方法 |
CN106155807A (zh) * | 2015-04-15 | 2016-11-23 | 阿里巴巴集团控股有限公司 | 一种实现资源调度的方法与设备 |
CN106776025A (zh) * | 2016-12-16 | 2017-05-31 | 郑州云海信息技术有限公司 | 一种计算机集群作业调度方法及其装置 |
CN107193655A (zh) * | 2017-05-17 | 2017-09-22 | 南京大学 | 一种基于效用函数的面向大数据处理的公平资源调度方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8458328B2 (en) * | 2010-11-02 | 2013-06-04 | Net Power And Light, Inc. | Method and system for data packet queue recovery |
-
2018
- 2018-02-05 CN CN201810111838.6A patent/CN110119307B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103501247A (zh) * | 2013-09-25 | 2014-01-08 | 天脉聚源(北京)传媒科技有限公司 | 一种高并发请求处理方法及装置 |
CN106155807A (zh) * | 2015-04-15 | 2016-11-23 | 阿里巴巴集团控股有限公司 | 一种实现资源调度的方法与设备 |
CN106021045A (zh) * | 2016-05-11 | 2016-10-12 | 深圳市国鑫恒宇科技有限公司 | 一种linux系统下服务器硬盘IO性能的测试方法 |
CN106776025A (zh) * | 2016-12-16 | 2017-05-31 | 郑州云海信息技术有限公司 | 一种计算机集群作业调度方法及其装置 |
CN107193655A (zh) * | 2017-05-17 | 2017-09-22 | 南京大学 | 一种基于效用函数的面向大数据处理的公平资源调度方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110119307A (zh) | 2019-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110119307B (zh) | 数据处理请求的处理方法、装置、存储介质及电子装置 | |
CN108776934B (zh) | 分布式数据计算方法、装置、计算机设备及可读存储介质 | |
US8261266B2 (en) | Deploying a virtual machine having a virtual hardware configuration matching an improved hardware profile with respect to execution of an application | |
CN112162865A (zh) | 服务器的调度方法、装置和服务器 | |
US20150347305A1 (en) | Method and apparatus for outputting log information | |
US20090282413A1 (en) | Scalable Scheduling of Tasks in Heterogeneous Systems | |
CN110806954A (zh) | 评估云主机资源的方法、装置、设备及存储介质 | |
KR101916294B1 (ko) | 클라우드 데이터 센터 분석을 위한 기술 | |
CN106209412B (zh) | 资源监控系统与其方法 | |
CN115543577B (zh) | 基于协变量的Kubernetes资源调度优化方法、存储介质及设备 | |
US20240160474A1 (en) | Multi-core processor task scheduling method, and device and storage medium | |
EP4361808A1 (en) | Resource scheduling method and device and computing node | |
CN113656168A (zh) | 一种流量的自动容灾和调度的方法、系统、介质和设备 | |
CN105022668B (zh) | 一种作业调度方法及系统 | |
CN112988185A (zh) | 云应用更新方法、装置、系统、电子设备及存储介质 | |
CN110347427A (zh) | 网页代码的优化方法及装置 | |
CN113064677B (zh) | 应用运行方法及装置、存储介质及电子装置 | |
CN103729417A (zh) | 一种数据扫描的方法及装置 | |
CN106940710B (zh) | 信息推送方法及装置 | |
CN111857995B (zh) | 进程调度方法和装置、存储介质及电子装置 | |
CN113010310A (zh) | 作业数据的处理方法、装置和服务器 | |
CN111376255B (zh) | 机器人数据采集方法、装置及终端设备 | |
CN112231167A (zh) | 云资源监控方法、装置、设备及存储介质 | |
CN112579257B (zh) | 一种虚拟中央处理器核心的调度方法、装置及相关设备 | |
CN112052077A (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 |