CN111221634A - 合并请求的处理方法、装置、设备及存储介质 - Google Patents
合并请求的处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN111221634A CN111221634A CN201911151367.2A CN201911151367A CN111221634A CN 111221634 A CN111221634 A CN 111221634A CN 201911151367 A CN201911151367 A CN 201911151367A CN 111221634 A CN111221634 A CN 111221634A
- Authority
- CN
- China
- Prior art keywords
- request
- user
- batch
- processing
- preset
- 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
- 238000012545 processing Methods 0.000 title claims abstract description 103
- 238000000034 method Methods 0.000 title claims abstract description 44
- 230000006870 function Effects 0.000 claims description 9
- 230000000903 blocking effect Effects 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 5
- 238000000605 extraction Methods 0.000 claims description 4
- 238000003672 processing method Methods 0.000 abstract description 5
- 230000008569 process Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 238000005034 decoration Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 1
- 238000013075 data extraction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- 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/546—Message passing systems or structures, e.g. queues
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种合并请求的处理方法、装置、设备及存储介质,所述方法包括将待处理的用户请求依次写入预设的缓存池中进行缓存,所述用户请求包括请求参数;当执行环境达预设的执行条件时,从所述缓存池中提取至少两个请求参数,并基于所述至少两个请求参数创建批处理请求;获取执行所述批处理请求生成的批量反馈数据;分发所述批量反馈数据至所述用户请求对应的用户终端。本发明通过积攒用户请求,当执行环境达预设的执行条件时,结合数据库批处理操作的能力批处理用户请求,减轻了高并发场景下数据库的压力,提高了***的高并发处理能力。
Description
技术领域
本发明涉及数据库批处理操作的技术领域,具体而言,本发明涉及一种合并请求的处理方法、装置、设备及存储介质。
背景技术
随着科技的发展,***之间和***内部各个子***之间的交互越发的重要,其主要体现在用户发送请求,及向用户返回请求数据的过程。
在现有技术中,接收到用户发送的一个请求,均需要连接一次数据库以处理用户请求。发明人发现该方法在高并发的场景下,给数据库带来了较大的处理压力。
发明内容
本发明的目的旨在至少解决上述技术缺陷之一,特别是解决如何在高并发的场景下,减轻数据库的压力。
第一方面,本发明提供了一种合并请求的处理方法,包括以下步骤:将待处理的用户请求依次写入预设的缓存池中进行缓存,所述用户请求包括请求参数;当执行环境达预设的执行条件时,从所述缓存池中提取至少两个请求参数,并基于所述至少两个请求参数创建批处理请求;获取执行所述批处理请求生成的批量反馈数据;分发所述批量反馈数据至所述用户请求对应的用户终端。
在一种实施例中,所述当执行环境达预设的执行条件时,从所述缓存池中提取至少两个请求参数之前,包括以下步骤:根据所述用户请求的线程创建回调任务;根据所述回调任务阻塞所述用户请求的线程。
在一种实施例中,所述分发所述批量反馈数据至所述用户请求对应的用户终端,包括以下步骤:根据所述回调任务,从所述批量反馈数据中调取处理结果返回至所述用户请求的线程;响应所述用户请求向对应的用户终端返回所述处理结果。
在一种实施例中,所述从所述缓存池中提取至少两个请求参数,并基于所述至少两个请求参数创建批处理请求,包括以下步骤:若所述缓存池中待处理的用户请求的数量大于预设阈值,从所述缓存池中提取所述预设阈值数量的请求参数,并基于所述预设阈值数量的请求参数创建批处理请求。
在一种实施例中,所述从所述缓存池中提取至少两个请求参数之后,包括以下步骤:标识提取的所述至少两个请求参数的用户请求为已处理;清除所述缓存池中已处理的用户请求。
在一种实施例中,所述执行环境达到预设的执行条件包括:所述缓存池中缓存待处理的用户请求的时间达预设执行时间。
在一种实施例中,所述获取执行所述批处理请求生成的批量反馈数据,包括以下步骤:根据预设的延时指令生成回调延时任务,其中,所述回调延时任务包括延时时间;当所述延时时间达成时,通过预设的回调函数调取所述批量反馈数据。
第二方面,本发明提供一种合并请求的处理装置,包括以下模块:缓存模块,用于将待处理的用户请求依次写入预设的缓存池中进行缓存,所述用户请求包括请求参数;提取模块,用于当执行环境达预设的执行条件时,从所述缓存池中提取至少两个请求参数,并基于所述至少两个请求参数创建批处理请求;获取模块,用于获取执行所述批处理请求生成的批量反馈数据;反馈模块,用于分发所述批量反馈数据至所述用户请求对应的用户终端。
第三方面,本发明提供一种计算机设备,包括:处理器;以及存储器,配置用于存储机器可读指令,所述指令在由所述处理器执行时,使得所述处理器执行第一方面所述的合并请求的处理方法。
第四方面,本发明提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序用于被处理器执行时实现如第一方面所述的合并请求的处理方法。
本发明实施例提供的技术方案,至少具有如下技术效果:
本发明通过采用缓存池缓存待处理的用户请求,所述用户请求包括请求参数,并预设执行条件;当执行环境达预设的执行条件时,提取缓存池中的请求参数并将所提取的请求参数组装成批处理请求,获取执行该批处理请求并获得数据库生成的批量反馈数据,进而将批量反馈数据分发至用户请求对应的用户终端,实现了将用户请求积攒,在特定的执行环境下,将所积攒的用户请求合并进行批处理;将用户请求合并进行批处理对于整个***而言,减轻了数据库压力,提高了***的高并发处理能力。
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本发明实施例一所述的合并请求的处理方法的一种流程图;
图2为本发明实施例一所述的合并请求的处理方法的另一种流程图;
图3为本发明实施例一所述的合并请求的处理方法的再一种流程图;
图4为本发明实施例二所述的合并请求的处理装置的一种模块框图;
图5为本发明实施例三所述的计算机设备的实体结构图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
实施例一
如图1,本发明实施例提供的一种合并请求的处理方法,包括以下步骤:
S101:将待处理的用户请求依次写入预设的缓存池中进行缓存,所述用户请求包括请求参数。
S102:当执行环境达预设的执行条件时,从所述缓存池中提取至少两个请求参数,并基于所述至少两个请求参数创建批处理请求。
S103:获取执行所述批处理请求生成的批量反馈数据。
S104:分发所述批量反馈数据至所述用户请求对应的用户终端。
在本发明实施例中,以执行主体为服务器为例进行说明,但不作为对执行主体的限定,其它可执行本发明实施例提供方法的计算机设备也应视为本发明的保护范围。
在步骤S101中,将待处理的用户请求依次写入预设的缓存池中进行缓存,所述用户请求包括请求参数。其中,所述待处理的用户请求为服务器接收到的用户请求,所述缓存池包括线程安全的容器(如:LinkedBlockingQueue),其具体采用队列形式存储待处理的用户请求。具体地,在本发明实施例中通过创建RequestPara对象,将接收到的用户请求及其请求参数赋值给RequestPara对象,并将该RequestPara对象缓存预设的缓存池中。即在步骤S101中,当接收到用户请求时,并非立刻发起接口调用,而是先通过缓存池对用户请求进行收集。在本发明实施例中,所述待处理的用户请求包括不同用户的同类请求,如由不同用户发起的查询请求。
进一步地,在步骤S101将待处理的用户请求依次写入预设的缓存池中进行缓存,包括以下步骤:将待处理的用户请求进行分类;将同类型的待处理的用户请求依次写入同一预设的缓存池中进行缓存。
在步骤S102中,当执行环境达预设的执行条件时,从所述缓存池中提取至少两个请求参数,并基于所述至少两个请求参数创建批处理请求。具体地,在本发明实施例中,预设有执行条件,当执行环境满足执行条件时,从缓存池中取出缓存的用户请求的请求参数创建成一个批处理请求。在一种实施例中,当执行环境达预设的执行条件时,将缓存池中缓存的所有用户请求的请求参数提取出来,组装成一个批处理请求。
进一步地,所述从所述缓存池中提取至少两个请求参数,并基于所述至少两个请求参数创建批处理请求,包括以下步骤:若所述缓存池中待处理的用户请求的数量大于预设阈值,从所述缓存池中提取所述预设阈值数量的请求参数,并基于所述预设阈值数量的请求参数创建批处理请求。在一种实施例中,对于每次提取的请求参数的数量进行限制,当缓存池中待处理的用户请求的数量大于预设阈值时,仅提取预设阈值数量的请求参数,避免合并的用户请求过多,同时当缓存池中待处理的用户请求的数量大于预设阈值时,可将待处理的用户请求分批处理(每次提取一定量的待处理用户请求进行合并,创建多个批处理请求,采用同一线程按序处理所述多个批处理请求)或采用多线程处理(每次提取一定量的待处理用户请求进行合并,创建多个批处理请求,同时采用多条线程处理批处理请求)的方式处理。
其中,所述从所述缓存池中提取至少两个请求参数之后,包括以下步骤:标识提取的所述至少两个请求参数的用户请求为已处理;清除所述缓存池中已处理的用户请求。在一种实施例中,将已从缓存池中提取的用户请求标识为已处理,并清除该用户请求。即在本发明实施中,从缓存池中提取出请求参数进而创建批处理请求,其请求参数所对应的用户请求将从缓存池的任务队列中清除,以保证缓存池中所有的用户请求均为待处理状态。
具体地,所述执行环境达到预设的执行条件包括:所述缓存池中缓存待处理的用户请求的时间达预设执行时间。例如,设定预设执行时间为10毫秒,当缓存时间每达10ms时,将缓存池中的待处理的用户请求提取一次。即设定了一个定时任务(如:newScheduledThreadPool),每隔预设执行时间,则提取一次数据进行处理。在一种可行的实施例中,所述预设的执行条件还包括缓存池中缓存用户请求的数量,通过设定缓存池缓存用户请求的最高存储量,一旦达最高值,则将数据提取进行处理。
在本发明实施例中,进一步地,如图2,在步骤S102当执行环境达预设的执行条件时,从所述缓存池中提取至少两个请求参数创建批处理请求之前,包括以下步骤:
S201:根据所述用户请求的线程创建回调任务。
S202:根据所述回调任务阻塞所述用户请求的线程。
其中,步骤S201根据所述用户请求的线程创建回调任务,为创建当前线程的任务,由其他线程异步处理,获取其他线程异步处理的结果。具体地,通过创建CompletableFuture,并赋值给RequestPara对象。即通过一个RequestPara实体对请求参数进行封装时,在实体中添加有CompletableFuture成员变量。
其中,步骤S202根据所述回调任务阻塞所使用户请求的线程,为通过CompletableFuture提供的get方法阻塞用户请求的线程。
在步骤S103获取执行所述批处理请求生成的批量反馈数据,其中,本发明实施例采用数据库的批处理操作执行所述批处理请求,即通过数据库批处理缓存池中被提取出的已合并的用户请求,生成批量反馈数据,该批量反馈数据采用list记录,为后续方便在批量反馈数据中寻找每一个用户请求的反馈数据,可将list转成map以便快速查找。具体地,在步骤S102中创建一个批处理请求后,向数据库发起批处理请求,并获取数据库执行所述批处理请求生成的批量反馈数据。
在步骤S104分发所述批量反馈数据至所述用户请求对应的用户终端,其中,所述批量反馈数据为一个总处理结果,在获取到该批量反馈数据后,根据用户请求中携带的能表示唯一的参数从批量反馈数据中调取与该用户请求相应的处理结果,并反馈至对应的用户终端。
在本发明实施例中,进一步地,如图3,步骤S104分发所述批量反馈数据至所述用户请求对应的用户终端,包括以下步骤:
S301:根据所述回调任务,从所述批量反馈数据中调取处理结果返回至所述用户请求的线程。
S302:响应所述用户请求向对应的用户终端返回所述处理结果。
具体地,步骤S301根据所述回调任务,从所述批量反馈数据中调取处理结果返回至所述用户请求的线程,其中,在获取到数据库执行所述批处理请求生成的批量反馈数据后,根据用户请求的请求参数在所述批量反馈数据中查找到与所述用户请求相应的处理结果后,通过CompletableFuture的complete方法,将处理结果返回到当前被阻塞的用户请求的线程中。
具体地,步骤S302响应所述用户请求向对应的用户终端返回所述处理结果,其中,当用户请求的线程获取到处理结果后,将继续响应并将处理结果反馈到对应的用户终端。其表现形式最终为CompletableFuture的get方法将获取到的数据,返回给接口调用者。
本发明实施例中,在接口层完成上述合并请求的处理过程。其预设有执行时间,如10ms;当接收到待处理的用户请求时,将该待处理的用户请求写入预设的缓存池中进行缓存,并对该待处理的用户请求的线程进行阻塞处理,以使该待处理的用户请求的线程暂不响应;其执行环境以缓存时间计算,当将第一个待处理的用户请求写入缓存池时开始计算缓存时间,当缓存时间达预设的执行时间时,将缓存池中缓存的待处理的用户请求的请求参数提取出来,组装成一个批处理请求,即将缓存池中的多个待处理的用户请求进行合并,形成一个批处理请求;并向数据库发起批处理请求,待数据库执行该批处理请求生成批量反馈数据后,获取该批量反馈数据,并根据待处理的用户请求的请求参数中能表示唯一的参数,在批量反馈数据中调取与待处理的用户请求相应的处理结果,并将该结果返回给当前被阻塞的待处理的用户请求的线程,当待处理的用户请求的线程接收到处理结果后,继续响应并将处理结果返回到对应的用户终端。
本发明实施例主要在高并发场景下,减轻数据库的压力,将多个同类型的用户请求合并为一个批处理请求,利用数据库的批处理操作,将原需多个请求反馈的过程调整为一个批处理请求反馈过程。
由于高并发并非持续发生,在一种可行的实施例中,在步骤S101将待处理的用户请求依次写入预设的缓存池中进行缓存之前,还包括以下步骤:确定在预设时间内,接收到的待处理的用户请求数量大于预设接收值。即针对本发明实施例所提供的方法预设一个触发条件,假设在预设时间内,接收到的待处理的用户请求数量大于预设接收值,则表征高并发的发生,即可触发执行本发明实施例所提供的方法。
区别于上述实施例,在一种可能的实施例中步骤S103获取执行所述批处理请求生成的批量反馈数据,包括以下步骤:根据预设的延时指令生成回调延时任务,其中,所述回调延时任务包括延时时间;当所述延时时间达成时,通过预设的回调函数调取所述批量反馈数据。具体地,区别于步骤S201、S202、S301、S302阻塞线程和回调结果的处理步骤,在此提供一种回调延时任务,在将待处理的用户请求依次写入预设的缓存池进行缓存,或将待处理的用户请求合并成批处理请求时,将待处理的用户请求的线程的用户请求任务挂起,执行该线程的后续任务,待所述延时时间达成时,通过预设的回调函数调取所述批量反馈数据,并根据待处理的用户请求的请求参数在批量反馈数据中查找到与待处理的用户请求相应的处理结果,线程继续响应该用户请求任务。其中,预设的延时指令为延时处理当前线程的任务;延时时间为预估已完成批处理请求,获得批量反馈数据的时间。进一步地,若延时时间达成,批处理请求仍未完成时,通过预设的回调函数调取的数据将为一个定值(如:用户请求为查询请求,则调取的数据为显示“服务器开小差了”的页面数据,进以提醒用户重新发起请求)。如,假设所述延时时间为100ms,则在将待处理的用户请求写入预设的缓存池进行缓存时,起算延时时间并将线程中用户请求任务挂起,该线程继续执行之后的任务;当延时时间累计达100ms时,则通过预设的回调函数调取批量反馈数据,以获取与待处理的用户请求相应的处理结果,线程响应用户请求任务并将处理结果返回给对应的用户终端。其利用了同一线程处理异步任务的操作,在通过合并请求有效缓解数据库压力的同时,有效提高线程的任务处理能力。
实施例二
如图4,为了进一步对本发明实施例一所述的合并请求的处理方法进行阐述,对其进行模块化说明,提供一种合并请求的处理装置40,包括以下模块:
缓存模块41,用于将待处理的用户请求依次写入预设的缓存池中进行缓存,所述用户请求包括请求参数;
提取模块42,用于当执行环境达预设的执行条件时,从所述缓存池中提取至少两个请求参数,并基于所述至少两个请求参数创建批处理请求;
获取模块43,用于获取执行所述批处理请求生成的批量反馈数据;
反馈模块44,用于分发所述批量反馈数据至所述用户请求对应的用户终端。
进一步地,还包括创建模块和阻塞模块,所述创建模块用于根据所述用户请求的线程创建回调任务;所述阻塞模块用于根据所述回调任务阻塞所述用户请求的线程。
其中,所述反馈模块44包括以下单元:
调取单元,用于根据所述回调任务,从所述批量反馈数据中调取处理结果返回至所述用户请求的线程。
返回单元,用于响应所述用户请求向对应的用户终端返回所述处理结果。
其中,所述提取模块42包括以下单元:
创建单元,用于若所述缓存池中待处理的用户请求的数量大于预设阈值,从所述缓存池中提取所述预设阈值数量的请求参数,并基于所述预设阈值数量的请求参数创建批处理请求。
进一步地,所述提取模块42还包括以下单元:
标识单元,用于标识提取的所述至少两个请求参数的用户请求为已处理;
清除单元,用于清除所述缓存池中已处理的用户请求。
其中,所述执行环境达到预设的执行条件包括:所述缓存池中缓存待处理的用户请求的时间达预设执行时间。
进一步地,所述获取模块43包括以下单元:
生成单元,用于根据预设的延时指令生成回调延时任务,其中,所述回调延时任务包括延时时间;
调取单元,用于当所述延时时间达成时,通过预设的回调函数调取所述批量反馈数据。
实施例三
本发明实施例提供一种计算机设备,包括:处理器;以及存储器,配置用于存储机器可读指令,所述指令在由所述处理器执行时,使得所述处理器执行如实施例一所述的合并请求的处理方法。
如图5所示,图5所示的计算机设备1000包括:处理器1001和存储器1003。其中,处理器1001和存储器1003相连,如通过总线1002相连。可选地,计算机设备1000还可以包括收发器1004。需要说明的是,实际应用中收发器1004不限于一个,该计算机设备1000的结构并不构成对本发明实施例的限定。
处理器1001可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数据信号处理器),ASIC(Application SpecificIntegrated Circuit,专用集成电路),FPGA(Field Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本发明公开内容所描述的各种示例性的逻辑方法,模块和电路。处理器1001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线1002可包括一通路,在上述组件之间传送信息。总线1002可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(ExtendedIndustry Standard Architecture,扩展工业标准结构)总线等。总线1002可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器1003可以是ROM(Read Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(Random Access Memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM(Electrically ErasableProgrammable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(Compact DiscRead Only Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
存储器1003用于存储执行本发明方案的应用程序代码,并由处理器1001来控制执行。处理器1001用于执行存储器1003中存储的应用程序代码,以实现前述方法实施例所示的内容。
实施例四
本发明实施例提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序用于被处理器执行时实现如实施例一所述的合并请求的处理方法。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种合并请求的处理方法,其特征在于,包括以下步骤:
将待处理的用户请求依次写入预设的缓存池中进行缓存,所述用户请求包括请求参数;
当执行环境达预设的执行条件时,从所述缓存池中提取至少两个请求参数,并基于所述至少两个请求参数创建批处理请求;
获取执行所述批处理请求生成的批量反馈数据;
分发所述批量反馈数据至所述用户请求对应的用户终端。
2.根据权利要求1所述的合并请求的处理方法,其特征在于,所述当执行环境达预设的执行条件时,从所述缓存池中提取至少两个请求参数之前,包括以下步骤:
根据所述用户请求的线程创建回调任务;
根据所述回调任务阻塞所述用户请求的线程。
3.根据权利要求2所述的合并请求的处理方法,其特征在于,所述分发所述批量反馈数据至所述用户请求对应的用户终端,包括以下步骤:
根据所述回调任务,从所述批量反馈数据中调取处理结果返回至所述用户请求的线程;
响应所述用户请求向对应的用户终端返回所述处理结果。
4.根据权利要求1所述的合并请求的处理方法,其特征在于,所述从所述缓存池中提取至少两个请求参数,并基于所述至少两个请求参数创建批处理请求,包括以下步骤:
若所述缓存池中待处理的用户请求的数量大于预设阈值,从所述缓存池中提取所述预设阈值数量的请求参数,并基于所述预设阈值数量的请求参数创建批处理请求。
5.根据权利要求1所述的合并请求的处理方法,其特征在于,所述从所述缓存池中提取至少两个请求参数之后,包括以下步骤:
标识提取的所述至少两个请求参数的用户请求为已处理;
清除所述缓存池中已处理的用户请求。
6.根据权利要求1所述的合并请求的处理方法,其特征在于,所述执行环境达到预设的执行条件包括:
所述缓存池中缓存待处理的用户请求的时间达预设执行时间。
7.根据权利要求1所述的合并请求的处理方法,其特征在于,所述获取执行所述批处理请求生成的批量反馈数据,包括以下步骤:
根据预设的延时指令生成回调延时任务,其中,所述回调延时任务包括延时时间;
当所述延时时间达成时,通过预设的回调函数调取所述批量反馈数据。
8.一种合并请求的处理装置,其特征在于,包括以下模块:
缓存模块,用于将待处理的用户请求依次写入预设的缓存池中进行缓存,所述用户请求包括请求参数;
提取模块,用于当执行环境达预设的执行条件时,从所述缓存池中提取至少两个请求参数,并基于所述至少两个请求参数创建批处理请求;
获取模块,用于获取执行所述批处理请求生成的批量反馈数据;
反馈模块,用于分发所述批量反馈数据至所述用户请求对应的用户终端。
9.一种计算机设备,其特征在于,包括:
处理器;
以及存储器,配置用于存储机器可读指令,所述指令在由所述处理器执行时,使得所述处理器执行权利要求1-7中任一项所述的合并请求的处理方法。
10.一种计算机可读存储介质,其特征在于,存储有计算机程序,所述计算机程序用于被处理器执行时实现如权利要求1-7中任一项所述的合并请求的处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911151367.2A CN111221634A (zh) | 2019-11-21 | 2019-11-21 | 合并请求的处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911151367.2A CN111221634A (zh) | 2019-11-21 | 2019-11-21 | 合并请求的处理方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111221634A true CN111221634A (zh) | 2020-06-02 |
Family
ID=70830595
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911151367.2A Pending CN111221634A (zh) | 2019-11-21 | 2019-11-21 | 合并请求的处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111221634A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111897631A (zh) * | 2020-07-15 | 2020-11-06 | 上海携旅信息技术有限公司 | 基于批处理的模型推断***、方法、电子设备和介质 |
CN112364273A (zh) * | 2020-09-18 | 2021-02-12 | 上海泛微软件有限公司 | 入口页面生成方法、装置、设备及计算机可读存储介质 |
CN112433851A (zh) * | 2020-11-23 | 2021-03-02 | 广州技象科技有限公司 | 一种物联网资源调度方法、装置、设备及存储介质 |
CN112925807A (zh) * | 2021-03-12 | 2021-06-08 | 广州市百果园信息技术有限公司 | 面向数据库的请求的批处理方法、装置、设备及存储介质 |
CN113590284A (zh) * | 2021-07-22 | 2021-11-02 | 济南浪潮数据技术有限公司 | 一种云平台分布式组件交互任务批处理方法、***、设备 |
CN114390014A (zh) * | 2022-01-22 | 2022-04-22 | 旭儒世纪(山东)信息技术有限公司 | 在高速网络环境中提高通讯并发量的业务处理方法及*** |
CN114520808A (zh) * | 2020-11-19 | 2022-05-20 | 南京亚信软件有限公司 | 请求处理方法、装置、电子设备及计算机可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107463563A (zh) * | 2016-06-02 | 2017-12-12 | 腾讯科技(深圳)有限公司 | 一种浏览器的信息服务处理方法及装置 |
CN109376004A (zh) * | 2018-08-20 | 2019-02-22 | 中国平安人寿保险股份有限公司 | 基于集群计算的数据批处理方法、装置、电子设备及介质 |
CN109885399A (zh) * | 2019-01-17 | 2019-06-14 | 平安普惠企业管理有限公司 | 数据处理方法、电子装置、计算机设备及存储介质 |
-
2019
- 2019-11-21 CN CN201911151367.2A patent/CN111221634A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107463563A (zh) * | 2016-06-02 | 2017-12-12 | 腾讯科技(深圳)有限公司 | 一种浏览器的信息服务处理方法及装置 |
CN109376004A (zh) * | 2018-08-20 | 2019-02-22 | 中国平安人寿保险股份有限公司 | 基于集群计算的数据批处理方法、装置、电子设备及介质 |
CN109885399A (zh) * | 2019-01-17 | 2019-06-14 | 平安普惠企业管理有限公司 | 数据处理方法、电子装置、计算机设备及存储介质 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111897631A (zh) * | 2020-07-15 | 2020-11-06 | 上海携旅信息技术有限公司 | 基于批处理的模型推断***、方法、电子设备和介质 |
CN111897631B (zh) * | 2020-07-15 | 2022-08-30 | 上海携旅信息技术有限公司 | 基于批处理的模型推断***、方法、电子设备和介质 |
CN112364273A (zh) * | 2020-09-18 | 2021-02-12 | 上海泛微软件有限公司 | 入口页面生成方法、装置、设备及计算机可读存储介质 |
CN114520808A (zh) * | 2020-11-19 | 2022-05-20 | 南京亚信软件有限公司 | 请求处理方法、装置、电子设备及计算机可读存储介质 |
CN112433851A (zh) * | 2020-11-23 | 2021-03-02 | 广州技象科技有限公司 | 一种物联网资源调度方法、装置、设备及存储介质 |
CN112925807A (zh) * | 2021-03-12 | 2021-06-08 | 广州市百果园信息技术有限公司 | 面向数据库的请求的批处理方法、装置、设备及存储介质 |
CN113590284A (zh) * | 2021-07-22 | 2021-11-02 | 济南浪潮数据技术有限公司 | 一种云平台分布式组件交互任务批处理方法、***、设备 |
CN114390014A (zh) * | 2022-01-22 | 2022-04-22 | 旭儒世纪(山东)信息技术有限公司 | 在高速网络环境中提高通讯并发量的业务处理方法及*** |
CN114390014B (zh) * | 2022-01-22 | 2022-12-09 | 旭儒世纪(山东)信息技术有限公司 | 在高速网络环境中提高通讯并发量的业务处理方法及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111221634A (zh) | 合并请求的处理方法、装置、设备及存储介质 | |
JP6876806B2 (ja) | ブロックチェーンコンセンサス形成の方法およびデバイス | |
CN110909025A (zh) | 数据库的查询方法、查询装置及终端 | |
US20180136842A1 (en) | Partition metadata for distributed data objects | |
US20170201566A1 (en) | File downloading method, apparatus, and terminal device | |
EP3514690A1 (en) | Non-volatile memory persistence method and computing device | |
CN107153643B (zh) | 数据表连接方法及装置 | |
CN113419824A (zh) | 数据处理方法、装置、***及计算机存储介质 | |
CN109359060B (zh) | 数据抽取方法、装置、计算设备及计算机存储介质 | |
CN110941395A (zh) | 动态随机存取存储器、内存管理方法、***及存储介质 | |
US20240126465A1 (en) | Data storage methods, apparatuses, devices, and storage media | |
CN111190727A (zh) | 内存的异步析构方法、装置、计算机设备及存储介质 | |
CN112506823A (zh) | 一种fpga数据读写方法、装置、设备及可读存储介质 | |
CN117312394A (zh) | 一种数据访问方法、装置、存储介质及电子设备 | |
CN110334034B (zh) | 映射表动态加载的方法、装置、计算机设备及存储介质 | |
CN111752715A (zh) | 大量请求量下的***优化方法、装置、设备及存储介质 | |
CN111444117A (zh) | 存储空间碎片化实现方法、装置、存储介质及电子设备 | |
CN109976885B (zh) | 基于多任务操作***的事件处理方法、装置及存储介质 | |
CN116450966A (zh) | 缓存访问方法及装置、设备、存储介质 | |
CN113157738B (zh) | 堆内数据缓存同步方法、装置、计算机设备及存储介质 | |
CN111625500B (zh) | 文件快照方法及装置、电子设备和存储介质 | |
CN111045787B (zh) | 一种快速继续实验方法及*** | |
CN111143418B (zh) | 一种数据库读取数据方法、装置、设备及存储介质 | |
CN113419792A (zh) | 一种事件处理方法、装置、终端设备和存储介质 | |
CN109284260B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200602 |
|
RJ01 | Rejection of invention patent application after publication |