CN105302907A - 一种请求的处理方法及装置 - Google Patents
一种请求的处理方法及装置 Download PDFInfo
- Publication number
- CN105302907A CN105302907A CN201510729662.7A CN201510729662A CN105302907A CN 105302907 A CN105302907 A CN 105302907A CN 201510729662 A CN201510729662 A CN 201510729662A CN 105302907 A CN105302907 A CN 105302907A
- Authority
- CN
- China
- Prior art keywords
- data object
- identification information
- request
- buffer queue
- user
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
- G06F16/24578—Query processing with adaptation to user needs using ranking
Abstract
本发明实施例提供了一种请求的处理方法及装置。一方面,本发明实施例通过接收至少两个获取请求;从而,逐一针对所述至少两个获取请求中每个所述获取请求,若确定缓存队列中有未分配的数据对象的标识信息,从未分配的数据对象的标识信息中获取一个数据对象的标识信息,建立获取的数据对象的标识信息与发送获取请求的用户之间的映射关系。因此,本发明实施例提供的技术方案用以解决现有技术中数据请求的处理方式导致的数据请求的处理效率和可靠性都比较低的问题。
Description
【技术领域】
本发明涉及计算机技术领域,尤其涉及一种请求的处理方法及装置。
【背景技术】
目前,在用户数目少于数据对象的数目的场景中,如抢购、抢红包等场景,由于数据对象的数量有限,往往只有少部分用户能够获取到数据对象。但是大量的用户为了获取到数据对象,都会发起获取请求,从而导致产生的获取请求的数量比较庞大。
现有技术中,浏览器为了避免给服务器带来较大处理压力,一般会先对收到的大量的获取请求进行处理,然后将其中一小部分获取请求发送到服务器,因此会导致刷单或者多发问题。或者,也可以将所有获取请求都发送到服务器,服务器在数据库中进行获取请求的处理,然而,当数据库遇到大量等待处理的获取请求时,处理压力过大会导致死锁、热点等异常,而且处理效率比较低。因此,现有技术中在户数目少于数据对象的数目的场景中,数据请求的处理方式导致数据请求的处理效率和可靠性都比较低。
【发明内容】
有鉴于此,本发明实施例提供了一种请求的处理方法及装置,用以解决现有技术中数据请求的处理方式导致的数据请求的处理效率和可靠性都比较低的问题。
本发明实施例的一方面,提供一种请求的处理方法,包括:
接收至少两个获取请求;
逐一针对所述至少两个获取请求中每个所述获取请求,若确定缓存队列中有未分配的数据对象的标识信息,从未分配的数据对象的标识信息中获取一个数据对象的标识信息,建立获取的数据对象的标识信息与发送获取请求的用户之间的映射关系。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述逐一针对所述至少两个获取请求中每个所述获取请求,若确定缓存队列中有未分配的数据对象的标识信息,从未分配的数据对象的标识信息中获取一个数据对象的标识信息之前,所述方法还包括:
将至少一个数据对象中每个所述数据对象的标识信息保存在所述缓存队列。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述方法还包括:
逐一针对所述至少两个获取请求中每个所述获取请求,判断所述缓存队列中是否有未分配的数据对象的标识信息。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述方法还包括:
将所述数据对象的标识信息与发送获取请求的用户之间的映射关系保存在所述缓存队列。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述方法还包括:
将所述数据对象的标识信息与发送获取请求的用户之间的映射关系保存在数据库。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述方法还包括:
向发送所述获取请求的用户推送获取结果指示,所述获取结果指示用于指示所述数据对象获取成功。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述方法还包括:
生成与所述数据对象的获取结果相关的详细信息;
将与所述数据对象的获取结果相关的详细信息保存在所述数据库;
其中,与所述数据对象的获取结果相关的详细信息包括:本次获取所述数据对象的事件编号、获取所述数据对象的时间信息、发送所述获取请求的用户的地址信息以及所述数据对象的属性信息。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述方法还包括:
若确定所述缓存队列中没有未分配的数据对象的标识信息,向发送所述获取请求的用户推送获取结果指示,所述获取结果指示用于指示所述数据对象获取失败。
本发明实施例的一方面,提供一种请求的处理装置,包括:
接收模块,用于接收至少两个获取请求;
处理模块,用于逐一针对所述至少两个获取请求中每个所述获取请求,若确定缓存队列中有未分配的数据对象的标识信息,从未分配的数据对象的标识信息中获取一个数据对象的标识信息,建立获取的数据对象的标识信息与发送获取请求的用户之间的映射关系。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述装置还包括:
配置模块,用于将至少一个数据对象中每个所述数据对象的标识信息保存在所述缓存队列。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述处理模块,还用于:
逐一针对所述至少两个获取请求中每个所述获取请求,判断所述缓存队列中是否有未分配的数据对象的标识信息。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述处理模块,还用于:
将所述数据对象的标识信息与发送获取请求的用户之间的映射关系保存在所述缓存队列。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述处理模块,还用于:
将所述数据对象的标识信息与发送获取请求的用户之间的映射关系保存在数据库。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述装置还包括:
第一推送模块,用于向发送所述获取请求的用户推送获取结果指示,所述获取结果指示用于指示所述数据对象获取成功。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述装置还包括:
生成模块,用于生成与所述数据对象的获取结果相关的详细信息;以及,将与所述数据对象的获取结果相关的详细信息保存在所述数据库;
其中,与所述数据对象的获取结果相关的详细信息包括:本次获取所述数据对象的事件编号、获取所述数据对象的时间信息、发送所述获取请求的用户的地址信息以及所述数据对象的属性信息。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述装置还包括:
第二推送模块,用于若确定所述缓存队列中没有未分配的数据对象的标识信息,向发送所述获取请求的用户推送获取结果指示,所述获取结果指示用于指示所述数据对象获取失败。
由以上技术方案可以看出,本发明实施例具有以下有益效果:
本发明实施例提供的技术方案中,当接收到用户的获取请求后,每次只处理一个获取请求,并且根据缓存队列中是否有未分配的标识信息来为用户分配数据对象。由于在缓存队列中处理数据时处理效率比较高,因此本发明实施例与现有技术中在数据库中处理获取请求的方式相比,处理速度更快,处理效率更高。同时,避免了在数据库中处理获取请求压力过大时出现的死锁、热点等异常问题,从而提高了获取请求的处理可靠性。所以,本发明实施例所提供的技术方案,能够解决现有技术中数据请求的处理方式导致的数据请求的处理效率和可靠性都比较低的问题。
【附图说明】
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
图1是本发明实施例所提供的请求的处理方法的流程示意图;
图2是本发明实施例所提供的请求的处理方法的实施例一的流程示例图;
图3是本发明实施例所提供的请求的处理装置的功能方块图。
【具体实施方式】
为了更好的理解本发明的技术方案,下面结合附图对本发明实施例进行详细描述。
应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
本发明实施例给出一种请求的处理方法,请参考图1,其为本发明实施例所提供的请求的处理方法的流程示意图,如图所示,该方法包括以下步骤:
S101,接收至少两个获取请求。
S102,逐一针对所述至少两个获取请求中每个所述获取请求,若确定缓存队列中有未分配的数据对象的标识信息,从未分配的数据对象的标识信息中获取一个数据对象的标识信息,建立获取的数据对象的标识信息与发送获取请求的用户之间的映射关系。
需要说明的是,S101~S102的执行主体可以为请求的处理装置,该装置可以位于服务器,本发明实施例对此不进行特别限定。
可选的,在本实施例的一个可能的实现方式中,可以预先将至少一个数据对象中每个数据对象的标识信息保存在缓存队列。
在一个具体的实现过程中,请参考图2,其为本发明实施例所提供的请求的处理方法的实施例一的流程示例图,如图2所示,对于等待分配给用户的至少一个数据对象,可以根据数据对象的价值、类别等属性,对至少一个数据对象的标识信息进行排序,以获得排序结果,然后将排序结果存储在缓存队列中,如此,实现将每个数据对象的标识信息存储在缓存队列。
例如,所述数据对象可以为等待用户抢购的物品,可以根据同一物品的颜色、型号和数量等,将同一颜色、同一型号的该物品的标识信息存储在同一个缓存队列中,这样该缓存队列中存储相应数量的相同的标识信息。若该物品有两个颜色,则可以利用两个缓存队列进行存储,一个缓存队列用于保存一个颜色的若干该物品的标识信息,另一个缓存队列用于保存另一个颜色的若干该物品的标识信息。
或者,又例如,所述数据对象可以是等待用户争抢的红包,可以根据红包的价值由高到底,对若干红包进行排序,以获得排序结果,然后利用一个缓存队列缓存该排序结果,这样,该缓存队列中就存储了若干红包的标识信息。
可选的,在本实施例的一个可能的实现方式中,如图2所示,还可以将至少一个数据对象中每个数据对象的标识信息同时保存在数据库。
在一个具体的实现过程中,如图2所示,将待分配的至少一个数据对象中每个数据对象的标识信息保存在缓存队列之后,用户可以在所使用的客户端上操作,以触发客户端向服务器发送获取请求,这样,服务器就可以接收到至少两个客户端中每个客户端发送的获取请求。
例如,可以在客户端上显示“抢购”按钮,若用户点击该“抢购”按钮,则客户端受到触发,向服务器发送获取请求,用于请求获取该“抢购”按钮针对的数据对象。或者,又例如,可以在客户端上显示“抢红包”按钮,如果用户点击该“抢购”按钮,则客户端受到触发,向服务器发送获取请求,用于请求获取红包。
在一个具体的实现过程中,为了保证同时只为一个用户分配数据对象,需要保证服务器同时只能有一个获取请求在处理,因此,本发明实施例中,在服务器上采用原子操作,这种操作一旦开始,就一直运行到结束,中间不会有任何打断,不会切换到另一个线程。
所述服务器上采用原子操作对获取请求处理的方法可以包括但不限于:所述服务器的接收模块用于接收至少两个客户端中每个客户端发送的获取请求。为了保证同时为一个用户分配数据对象,则需要保证服务器的处理模块同时只能有一个获取请求在处理,因此,所述服务器的接收模块需要逐一将至少两个获取请求中每个获取请求发送给服务器的处理模块。
优选的,对于接收到的至少两个获取请求,所述服务器的接收模块可以根据先来后到的原则,按照接收顺序,将先收到的获取请求发送到处理模块,待处理模块根据该获取请求处理完毕之后,接收模块再将下一个接收到的获取请求发送到处理模块,以此类推。或者,服务器的接收模块也可以按照优先级由高到低的顺序,优先将优先级高的用户发送的获取请求,发送到处理模块进行处理。其中,用户的优先级可以根据用户的购买力度、会员等级和活跃度中至少一个确定。
在一个具体的实现过程中,如图2所示,所述服务器的处理模块逐一针对所述至少两个获取请求中每个所述获取请求,判断缓存队列中是否有未分配的数据对象的标识信息。
进一步的,如图2所示,若服务器的处理模块确定缓存队列中有未分配的数据对象的标识信息,则从未分配的数据对象的标识信息中获取一个数据对象的标识信息,然后,建立获取的数据对象的标识信息与发送获取请求的用户之间的映射关系。
可以理解的是,建立的数据对象的标识信息与发送获取请求的用户之间的映射关系,可以表示将该标识信息所指示的数据对象,分配给发送该获取请求的用户,这样该标识信息所指示的数据对象就被分配出去了,该用户获取到了该数据对象。
或者,如图2所示,若服务器的处理模块确定缓存队列中没有未分配的数据对象的标识信息,说明所述缓存队列中所有的标识信息所指示的数据对象,都已经分配出去,没有剩余的数据对象可供分配,则立即向发送所述获取请求的用户推送获取结果指示,所述获取结果指示用于指示所述数据对象获取失败。
举例说明,判断缓存队列中是否有未分配的数据对象的标识信息的方法可以包括但不限于以下两种:
第一种:服务器的处理模块从未分配的数据对象的标识信息中获取一个数据对象的标识信息,并为该数据对象的标识信息建立映射关系之后,表示该数据对象被分配出去,所以,处理模块可以在缓存队列中将该数据对象的标识信息删除,这样缓存队列中剩下的数据对象的标识信息就是未分配的数据对象的标识信息。如此,服务器的处理模块就可以根据缓存队列中是否有数据对象的标识信息,来判断缓存队列中是否有未分配的数据对象的标识信息,如果缓存队列中有数据对象的标识信息,则确定缓存队列中有未分配的数据对象的标识信息;反之,如果缓存队列中没有数据对象的标识信息,则确定缓存队列中没有未分配的数据对象的标识信息。
第二种:可以预先为缓存队列中的每个数据对象的标识信息配置对应的状态标识,所述状态标识用来指示对应的标识信息是否被分配。这样,服务器的处理模块可以根据缓存队列中是否有指示未分配的状态标识,来判断缓存队列中是否有未分配的数据对象的标识信息,如果缓存队列中有数据对象的标识信息;如果缓存队列中存在至少一个指示未分配的状态标识,则确定缓存队列中有未分配的数据对象的标识信息;反之,如果缓存队列中没有指示未分配的状态标识,则确定缓存队列中没有未分配的数据对象的标识信息。
在一个具体的实现过程中,服务器的处理模块可以按照缓存队列中数据对象的标识信息的顺序,从未分配的数据对象的标识信息中获取一个数据对象的标识信息。
例如,所述缓存队列可以利用Redis存储系统实现。Redis存储系统是一种基于Key-Value的存储系统,可以支持原子操作。服务器的处理模块可以利用脚本语言Lua实现,Lua是一种轻量级的脚本语言,具有体积小、速度快的特点。利用脚本语言Lua实现的处理模块可以通过调用Redis存储系统的命令,从Redis存储系统中获取一个数据对象的标识信息。
本发明实施例中,预先将等待分配的数据对象的标识信息存储在缓存队列,当接收到用户的获取请求后,每次只处理一个获取请求,并且根据缓存队列中是否有未分配的标识信息来为用户分配数据对象。由于在缓存队列中处理数据时处理效率比较高,因此本发明实施例与现有技术中在数据库中处理获取请求的方式相比,处理速度更快,处理效率更高。同时,避免了在数据库中处理获取请求压力过大时出现的死锁、热点等异常问题,从而提高了获取请求的处理可靠性。另外,本发明实施例中,预先准备好等待分配的数据对象的标识信息,因此可以避免现有技术中的多发问题。
可选的,在本实施例的一个可能的实现方式中,如图2所示,在建立数据对象的标识信息与发送获取请求的用户之间的映射关系之后,可以进一步将该数据对象的标识信息与发送获取请求的用户之间的映射关系,保存在该数据对象的标识信息之前存储的缓存队列。
在一个具体的实现过程中,可以根据预设的周期,周期地在缓存队列中清除存储的数据对象的标识信息与发送获取请求的用户之间的映射关系。
可选的,在本实施例的一个可能的实现方式中,如图2所示,在建立并在缓存队列中存储数据对象的标识信息与发送获取请求的用户之间的映射关系之后,还可以进一步将所述数据对象的标识信息与发送获取请求的用户之间的映射关系保存在数据库。
可以理解的是,由于缓存队列一般会在设备重启之后被删除或者所占存储空间被其他存储设备使用,因此为了保证数据对象的标识信息与发送获取请求的用户之间的映射关系不被丢失,本发明实施例中,将建立的数据对象的标识信息与发送获取请求的用户之间的映射关系同时保存在性能稳定的数据库中,避免数据丢失,实现数据的可靠的、持久化的保存。
可选的,在本实施例的一个可能的实现方式中,如图2所示,在数据库中保存所述数据对象的标识信息与发送获取请求的用户之间的映射关系之后,就可以确定该用户获取该数据对象成功,即该数据对象已经确切的被分配给了该用户,则服务器可以向用户所使用的客户端推送获取结果指示,以便于该客户端向用户推送获取结果指示,这里,获取结果指示用于指示所述数据对象获取成功。这样,用户能够及时获知获取数据对象的结果,提高了用户体验。
可选的,在本实施例的一个可能的实现方式中,如图2所示,在向用户推送获取请求指示之后,再生成与所述数据对象的获取结果相关的详细信息,然后,将与所述数据对象的获取结果相关的详细信息保存在所述数据库。如此,客户端可以根据数据库中保存的与所述数据对象的获取结果相关的详细信息,进行信息展现,因此数据的准确性和可靠性比较高。
优选的,与所述数据对象的获取结果相关的详细信息包括:本次获取所述数据对象的事件编号、获取所述数据对象的时间信息、发送所述获取请求的用户的地址信息以及所述数据对象的属性信息。
例如,数据对象可以为等待抢购的商品,与该商品的抢购结果相关的详细信息可以包括:订单详情、收货信息、支付信息和商品的属性信息等。
可以理解的是,由于生成并存储与数据对象的获取结果相关的详细信息需要消耗一定时间,所以,本发明实施例中,对于成功获取到数据对象的用户,可以先向用户返回获取成功的指示,再生成与数据对象的获取结果相关的详细信息,这种异步更新机制不会耽误用户第一时间获知获取结果,提高了用户体验。
本发明实施例所提供的技术方案,能够快速、高效且可靠地处理获取请求,因此可以适用于抢购、秒杀或者抢红包等应用场景。
本发明实施例进一步给出实现上述方法实施例中各步骤及方法的装置实施例。
请参考图3,其为本发明实施例所提供的请求的处理装置的功能方块图。如图所示,该装置包括:
接收模块31,用于接收至少两个获取请求;
处理模块32,用于逐一针对所述至少两个获取请求中每个所述获取请求,若确定缓存队列中有未分配的数据对象的标识信息,从未分配的数据对象的标识信息中获取一个数据对象的标识信息,建立获取的数据对象的标识信息与发送获取请求的用户之间的映射关系。
可选的,在本实施例的一个可能的实现方式中,所述装置还包括:
配置模块33,用于将至少一个数据对象中每个所述数据对象的标识信息保存在所述缓存队列。
可选的,在本实施例的一个可能的实现方式中,所述处理模块32,还用于:
逐一针对所述至少两个获取请求中每个所述获取请求,判断所述缓存队列中是否有未分配的数据对象的标识信息。
可选的,在本实施例的一个可能的实现方式中,所述处理模块32,还用于:
将所述数据对象的标识信息与发送获取请求的用户之间的映射关系保存在所述缓存队列。
可选的,在本实施例的一个可能的实现方式中,所述处理模块32,还用于:
将所述数据对象的标识信息与发送获取请求的用户之间的映射关系保存在数据库。
可选的,在本实施例的一个可能的实现方式中,所述装置还包括:
第一推送模块34,用于向发送所述获取请求的用户推送获取结果指示,所述获取结果指示用于指示所述数据对象获取成功。
可选的,在本实施例的一个可能的实现方式中,所述装置还包括:
生成模块35,用于生成与所述数据对象的获取结果相关的详细信息;以及,将与所述数据对象的获取结果相关的详细信息保存在所述数据库;
其中,与所述数据对象的获取结果相关的详细信息包括:本次获取所述数据对象的事件编号、获取所述数据对象的时间信息、发送所述获取请求的用户的地址信息以及所述数据对象的属性信息。
可选的,在本实施例的一个可能的实现方式中,所述装置还包括:
第二推送模块36,用于若确定所述缓存队列中没有未分配的数据对象的标识信息,向发送所述获取请求的用户推送获取结果指示,所述获取结果指示用于指示所述数据对象获取失败。
由于本实施例中的各单元能够执行图1所示的方法,本实施例未详细描述的部分,可参考对图1的相关说明。
本发明实施例的技术方案具有以下有益效果:
本发明实施例中,通过接收至少两个获取请求;从而,逐一针对所述至少两个获取请求中每个所述获取请求,若确定缓存队列中有未分配的数据对象的标识信息,从未分配的数据对象的标识信息中获取一个数据对象的标识信息,建立获取的数据对象的标识信息与发送获取请求的用户之间的映射关系。
本发明实施例提供的技术方案中,当接收到用户的获取请求后,每次只处理一个获取请求,并且根据缓存队列中是否有未分配的标识信息来为用户分配数据对象。由于在缓存队列中处理数据时处理效率比较高,因此本发明实施例与现有技术中在数据库中处理获取请求的方式相比,处理速度更快,处理效率更高。同时,避免了在数据库中处理获取请求压力过大时出现的死锁、热点等异常问题,从而提高了获取请求的处理可靠性。所以,本发明实施例所提供的技术方案,能够解决现有技术中数据请求的处理方式导致的数据请求的处理效率和可靠性都比较低的问题。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)或处理器(Processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(RandomAccessMemory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (16)
1.一种请求的处理方法,其特征在于,所述方法包括:
接收至少两个获取请求;
逐一针对所述至少两个获取请求中每个所述获取请求,若确定缓存队列中有未分配的数据对象的标识信息,从未分配的数据对象的标识信息中获取一个数据对象的标识信息,建立获取的数据对象的标识信息与发送获取请求的用户之间的映射关系。
2.根据权利要求1所述的方法,其特征在于,所述逐一针对所述至少两个获取请求中每个所述获取请求,若确定缓存队列中有未分配的数据对象的标识信息,从未分配的数据对象的标识信息中获取一个数据对象的标识信息之前,所述方法还包括:
将至少一个数据对象中每个所述数据对象的标识信息保存在所述缓存队列。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
逐一针对所述至少两个获取请求中每个所述获取请求,判断所述缓存队列中是否有未分配的数据对象的标识信息。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将所述数据对象的标识信息与发送获取请求的用户之间的映射关系保存在所述缓存队列。
5.根据权利要求1或4所述的方法,其特征在于,所述方法还包括:
将所述数据对象的标识信息与发送获取请求的用户之间的映射关系保存在数据库。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
向发送所述获取请求的用户推送获取结果指示,所述获取结果指示用于指示所述数据对象获取成功。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
生成与所述数据对象的获取结果相关的详细信息;
将与所述数据对象的获取结果相关的详细信息保存在所述数据库;
其中,与所述数据对象的获取结果相关的详细信息包括:本次获取所述数据对象的事件编号、获取所述数据对象的时间信息、发送所述获取请求的用户的地址信息以及所述数据对象的属性信息。
8.根据权利要求3所述的方法,其特征在于,所述方法还包括:
若确定所述缓存队列中没有未分配的数据对象的标识信息,向发送所述获取请求的用户推送获取结果指示,所述获取结果指示用于指示所述数据对象获取失败。
9.一种请求的处理装置,其特征在于,所述装置包括:
接收模块,用于接收至少两个获取请求;
处理模块,用于逐一针对所述至少两个获取请求中每个所述获取请求,若确定缓存队列中有未分配的数据对象的标识信息,从未分配的数据对象的标识信息中获取一个数据对象的标识信息,建立获取的数据对象的标识信息与发送获取请求的用户之间的映射关系。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括:
配置模块,用于将至少一个数据对象中每个所述数据对象的标识信息保存在所述缓存队列。
11.根据权利要求9所述的装置,其特征在于,所述处理模块,还用于:
逐一针对所述至少两个获取请求中每个所述获取请求,判断所述缓存队列中是否有未分配的数据对象的标识信息。
12.根据权利要求9所述的装置,其特征在于,所述处理模块,还用于:
将所述数据对象的标识信息与发送获取请求的用户之间的映射关系保存在所述缓存队列。
13.根据权利要求9或12所述的装置,其特征在于,所述处理模块,还用于:
将所述数据对象的标识信息与发送获取请求的用户之间的映射关系保存在数据库。
14.根据权利要求13所述的装置,其特征在于,所述装置还包括:
第一推送模块,用于向发送所述获取请求的用户推送获取结果指示,所述获取结果指示用于指示所述数据对象获取成功。
15.根据权利要求14所述的装置,其特征在于,所述装置还包括:
生成模块,用于生成与所述数据对象的获取结果相关的详细信息;以及,将与所述数据对象的获取结果相关的详细信息保存在所述数据库;
其中,与所述数据对象的获取结果相关的详细信息包括:本次获取所述数据对象的事件编号、获取所述数据对象的时间信息、发送所述获取请求的用户的地址信息以及所述数据对象的属性信息。
16.根据权利要求11所述的装置,其特征在于,所述装置还包括:
第二推送模块,用于若确定所述缓存队列中没有未分配的数据对象的标识信息,向发送所述获取请求的用户推送获取结果指示,所述获取结果指示用于指示所述数据对象获取失败。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510729662.7A CN105302907A (zh) | 2015-10-30 | 2015-10-30 | 一种请求的处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510729662.7A CN105302907A (zh) | 2015-10-30 | 2015-10-30 | 一种请求的处理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105302907A true CN105302907A (zh) | 2016-02-03 |
Family
ID=55200176
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510729662.7A Pending CN105302907A (zh) | 2015-10-30 | 2015-10-30 | 一种请求的处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105302907A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106250547A (zh) * | 2016-08-12 | 2016-12-21 | 福建中金在线信息科技有限公司 | 一种控制红包的方法以及系统 |
CN106375462A (zh) * | 2016-09-13 | 2017-02-01 | 北京百度网讯科技有限公司 | 在分布式消息系统中实现消息持久化的方法及装置 |
WO2017177835A1 (zh) * | 2016-04-14 | 2017-10-19 | 阿里巴巴集团控股有限公司 | 虚拟物品的分配方法、系统及服务器 |
CN108696472A (zh) * | 2017-04-05 | 2018-10-23 | 北京京东尚科信息技术有限公司 | 请求处理方法和装置 |
CN109492016A (zh) * | 2018-11-19 | 2019-03-19 | 中国银联股份有限公司 | 一种交易清算方法及装置 |
CN111782391A (zh) * | 2020-06-29 | 2020-10-16 | 北京达佳互联信息技术有限公司 | 资源分配方法、装置、电子设备和存储介质 |
-
2015
- 2015-10-30 CN CN201510729662.7A patent/CN105302907A/zh active Pending
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190043027A1 (en) * | 2016-04-14 | 2019-02-07 | Alibaba Group Holding Limited | Method and system for allocating virtual articles |
TWI675339B (zh) * | 2016-04-14 | 2019-10-21 | 香港商阿里巴巴集團服務有限公司 | 虛擬物品的分配方法、系統及伺服器 |
WO2017177835A1 (zh) * | 2016-04-14 | 2017-10-19 | 阿里巴巴集团控股有限公司 | 虚拟物品的分配方法、系统及服务器 |
CN107302488A (zh) * | 2016-04-14 | 2017-10-27 | 阿里巴巴集团控股有限公司 | 虚拟物品的分配方法、系统及服务器 |
CN107302488B (zh) * | 2016-04-14 | 2021-07-09 | 创新先进技术有限公司 | 虚拟物品的分配方法、系统及服务器 |
KR20180133903A (ko) * | 2016-04-14 | 2018-12-17 | 알리바바 그룹 홀딩 리미티드 | 가상 물품을 할당하기 위한 방법과 시스템, 및 서버 |
KR102365796B1 (ko) * | 2016-04-14 | 2022-02-23 | 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. | 가상 물품을 할당하기 위한 방법과 시스템 |
US11244291B2 (en) | 2016-04-14 | 2022-02-08 | Advanced New Technologies Co., Ltd. | Method and system for allocating virtual articles |
KR102226857B1 (ko) * | 2016-04-14 | 2021-03-12 | 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. | 가상 물품을 할당하기 위한 방법과 시스템, 및 서버 |
US20220138706A1 (en) * | 2016-04-14 | 2022-05-05 | Advanced New Technologies Co., Ltd. | Method and system for allocating virtual articles |
US11823142B2 (en) * | 2016-04-14 | 2023-11-21 | Advanced New Technologies Co., Ltd. | Method and system for allocating virtual articles |
KR20210029304A (ko) * | 2016-04-14 | 2021-03-15 | 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. | 가상 물품을 할당하기 위한 방법과 시스템 |
CN106250547A (zh) * | 2016-08-12 | 2016-12-21 | 福建中金在线信息科技有限公司 | 一种控制红包的方法以及系统 |
CN106375462A (zh) * | 2016-09-13 | 2017-02-01 | 北京百度网讯科技有限公司 | 在分布式消息系统中实现消息持久化的方法及装置 |
CN108696472A (zh) * | 2017-04-05 | 2018-10-23 | 北京京东尚科信息技术有限公司 | 请求处理方法和装置 |
CN108696472B (zh) * | 2017-04-05 | 2021-05-25 | 北京京东尚科信息技术有限公司 | 请求处理方法和装置 |
CN109492016A (zh) * | 2018-11-19 | 2019-03-19 | 中国银联股份有限公司 | 一种交易清算方法及装置 |
US11887068B2 (en) | 2018-11-19 | 2024-01-30 | China Unionpay Co., Ltd. | Transaction settlement method and apparatus |
CN111782391A (zh) * | 2020-06-29 | 2020-10-16 | 北京达佳互联信息技术有限公司 | 资源分配方法、装置、电子设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105302907A (zh) | 一种请求的处理方法及装置 | |
US11100605B2 (en) | Virtual machine graphics resource usage | |
US20220083395A1 (en) | Scheduling system for computational work on heterogeneous hardware | |
US8381216B2 (en) | Dynamic thread pool management | |
CN109451051B (zh) | 服务请求处理方法、装置、电子设备及存储介质 | |
US10693816B2 (en) | Communication methods and systems, electronic devices, and computer clusters | |
CN106716335B (zh) | 映射信息的异步处理 | |
CN111190745A (zh) | 一种数据处理方法、装置及计算机可读存储介质 | |
CN104486407A (zh) | 编号的生成方法及装置 | |
CN109033814B (zh) | 智能合约触发方法、装置、设备及存储介质 | |
CN106713388B (zh) | 一种突发业务处理方法及装置 | |
CN108847981A (zh) | 分布式计算机云计算处理方法 | |
CN109379305A (zh) | 一种数据下发方法、装置、服务器及存储介质 | |
CN109359060B (zh) | 数据抽取方法、装置、计算设备及计算机存储介质 | |
CN112367345A (zh) | 数据处理方法、服务端设备及计算机可读存储介质 | |
CN110287146A (zh) | 应用下载的方法、设备和计算机存储介质 | |
CN108259526A (zh) | 一种数据传输方法和装置 | |
CN109710679B (zh) | 数据抽取方法及装置 | |
CN114584618A (zh) | 信息交互方法、装置、设备、存储介质和系统 | |
CN108241616B (zh) | 消息推送方法和装置 | |
US9954971B1 (en) | Cache eviction in a distributed computing system | |
WO2020233364A1 (zh) | 资源处理平台的确认方法、装置、电子设备和介质 | |
CN106357557A (zh) | 一种消息处理方法及装置 | |
CN107277088B (zh) | 高并发业务请求处理系统及方法 | |
CN113141264A (zh) | 高并发访问处理方法、装置以及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into 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: 20160203 |