CN118277423A - 查询处理方法、装置、***、电子设备以及存储介质 - Google Patents
查询处理方法、装置、***、电子设备以及存储介质 Download PDFInfo
- Publication number
- CN118277423A CN118277423A CN202211713914.3A CN202211713914A CN118277423A CN 118277423 A CN118277423 A CN 118277423A CN 202211713914 A CN202211713914 A CN 202211713914A CN 118277423 A CN118277423 A CN 118277423A
- Authority
- CN
- China
- Prior art keywords
- query
- query request
- cache cluster
- cluster
- query processing
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 23
- 238000012545 processing Methods 0.000 claims abstract description 133
- 238000000034 method Methods 0.000 claims abstract description 54
- 238000011144 upstream manufacturing Methods 0.000 claims abstract description 43
- 230000008569 process Effects 0.000 claims description 37
- 238000013500 data storage Methods 0.000 claims description 25
- 238000004891 communication Methods 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 12
- 238000010586 diagram Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 230000000903 blocking effect Effects 0.000 description 3
- 230000001131 transforming effect Effects 0.000 description 3
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开涉及一种查询处理方法、装置、***、电子设备以及存储介质,方法包括:获取客户端发送的查询请求;查询请求包括查询对象的标识信息和上游服务类型信息;基于查询对象的标识信息和上游服务类型信息,从N个缓存集群中,确定与查询请求对应的目标缓存集群;N为大于或等于2的正整数;将查询请求发送至目标缓存集群;接收目标缓存集群发送的第一查询处理结果,第一查询处理结果由目标缓存集群对查询请求进行处理得到;将第一查询处理结果发送至客户端。对于任一缓存集群,其不需要处理所有的查询请求,仅需要处理少部分分配至其处的查询请求,可以充分降低单个缓存集群的流量压力,可以降低网络拥塞;可实现无上限支撑流量增长。
Description
技术领域
本公开涉及查询处理技术领域,尤其涉及一种查询处理方法、装置、***、电子设备以及存储介质。
背景技术
随着电商查询蓬勃发展,电商商品查询流量快速增加。预期未来电商商品查询流量将达到千万级别。但目前,单个redis物理集群最多支撑到百万级别流量,无法满足日益增长的查询流量需求。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本公开提供了一种查询处理方法、装置、***、电子设备以及存储介质。
第一方面,本公开提供了一种查询处理方法,包括:
获取客户端发送的查询请求;所述查询请求包括查询对象的标识信息和上游服务类型信息;
基于所述查询对象的标识信息和上游服务类型信息,从N个缓存集群中,确定与所述查询请求对应的目标缓存集群;N为大于或等于2的正整数;
将所述查询请求发送至所述目标缓存集群;
接收所述目标缓存集群发送的第一查询处理结果,所述第一查询处理结果由所述目标缓存集群对所述查询请求进行处理得到;
将所述第一查询处理结果发送至所述客户端。
第二方面,本公开还提供了一种查询处理***,包括:客户端、总控设备及N个缓存集群;所述总控设备与所述客户端、以及N个所述缓存集群均通讯连接;N为大于或等于2的正整数;
所述客户端生成查询请求,并将所述查询请求发送至所述总控设备;所述查询请求包括查询对象的标识信息和上游服务类型信息;
所述总控设备接收所述查询请求和上游服务类型信息,并基于所述查询对象的标识信息,从N个所述缓存集群中,确定与所述查询请求对应的目标缓存集群;将所述查询请求发送至所述目标缓存集群;
所述缓存集群对其接收到的所述查询请求进行处理,形成第一查询处理结果;
所述总控设备接收所述目标缓存集群发送的第一查询处理结果,以及将所述第一查询处理结果发送至所述客户端。
第三方面,本公开还提供了一种查询处理装置,包括:
获取模块,用于获取客户端发送的查询请求;所述查询请求包括查询对象的标识信息和上游服务类型信息;
路由控制模块,用于基于所述查询对象的标识信息和上游服务类型信息,从N个缓存集群中,确定与所述查询请求对应的目标缓存集群;N为大于或等于2的正整数;
第一发送模块,用于将所述查询请求发送至所述目标缓存集群;
接收模块,用于接收所述目标缓存集群发送的第一查询处理结果,所述第一查询处理结果由所述目标缓存集群对所述查询请求进行处理得到;
第二发送模块,用于将所述第一查询处理结果发送至所述客户端。
第四方面,本公开还提供了一种电子设备,所述电子设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上所述的查询处理方法。
第五方面,本公开还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述的查询处理方法。
本公开实施例提供的技术方案与现有技术相比具有如下优点:
本公开实施例提供的技术方案通过设置获取客户端发送的查询请求;查询请求包括查询对象的标识信息;基于查询对象的标识信息,从N个缓存集群中,确定与查询请求对应的目标缓存集群;N为大于或等于2的正整数;将查询请求发送至目标缓存集群。上述技术方案中,由于并不会将每一个查询请求发送至所有的缓存集群,对于任一缓存集群,其不需要处理所有的查询请求,仅需要处理少部分分配至其处的查询请求,可以充分降低单个缓存集群的流量压力,可以降低网络拥塞,进而避免因网络拥塞导致的卡顿和延时。采用上述技术方案,通过增加缓存集群的数目,可以实现任意扩容,即可实现无上限支撑流量增长。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为现有的一种查询处理***的结构示意图;
图2为本公开实施例提供的一种查询处理***的结构示意图;
图3为本公开实施例提供的一种查询处理方法的流程图;
图4为本公开实施例中的一种查询处理装置的结构示意图;
图5为本公开实施例中的一种电子设备的结构示意图。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
图1为现有的一种查询处理***的结构示意图。该查询处理***包括客户端、总控设备及redis物理集群。客户端与总控设备通讯连接,总控设备与redis物理集群通讯连接。当客户端向总控设备发送商品查询请求后,总控设备将该商品查询请求转发至redis物理集群,redis物理集群对该商品查询请求进行处理,得到商品查询结果,并将该商品查询结果反馈至总控设备,总控设备再将该查询结果反馈至客户端。
由于单个redis物理集群的商品查询请求处理能力限制在百万级别,往上无法突破,无法满足日益增长的查询流量需求。
图2为本公开实施例提供的一种查询处理***的结构示意图。参见图2,该查询处理***包括客户端、总控设备及N个缓存集群;总控设备与客户端、以及N个缓存集群均通讯连接;N为大于或等于2的正整数。客户端生成查询请求,并将查询请求发送至总控设备;查询请求包括查询对象的标识信息和上游服务类型信息;总控设备接收该查询请求,并基于查询对象的标识信息和上游服务类型信息,从N个缓存集群中,确定与查询请求对应的目标缓存集群;将查询请求发送至目标缓存集群;缓存集群对其接收到的查询请求进行处理,形成第一查询处理结果;总控设备还接收目标缓存集群发送的第一查询处理结果,以及将第一查询处理结果发送至客户端。
查询请求是指在电商运营、商品导购或商品交易等场景下,为了实现查询目的,由客户端生成,并向总控设备发送的查询请求。在一些实施例中,查询请求为包括查询任务的查询请求。其中,客户端具体可以为商品销售方(如商家)的客户端,也可以为商品购买方(如买家或观看直播的用户)的客户端,还可以为商品推荐方(如直播团队、达人)的客户端等。
查询对象是指查询请求所关注的、针对的、查询的对象。可选地,查询对象包括但不限于商品、商家以及用户的购物记录等。示例性地,查询请求为对A商品的搜索请求,查询对象为A商品。
若查询对象为商品。示例性地,查询对象具体为物品或者服务等。
进一步地,商品包括多种属性。商品的属性是商品特征信息,如因商品自身构造、组成所具有的特征,或人为赋予的特征。如果商品为物品,其属性为商品名称、商品ID、商品链接、样式、尺寸、材质、功能、商标、类型、价格、颜色和包装等。如果商品为服务,其属性包括商品名称、商品ID、商品所包括的内容以及注意事项等。商品的属性信息是对商品的属性进行描述的信息。
查询对象的标识信息是指,能够将查询对象与其他对象进行区别的信息。可选地,查询对象的标识信息包括商品的部分属性信息,如查询对象的标识信息为商品ID。
上游服务类型信息,是指能够反映查询请求是在何种场景(或服务)下生成的信息,即能够反映查询请求的来源的信息。或者,上游服务类型信息用于描述该查询请求生成前客户端所显示的页面的类型的信息。示例性,上游服务类型信息包括描述通过达人橱窗页面而形成的查询请求的信息、通过商家店铺页面而形成的查询请求的信息、通过引流短视频而形成的查询请求的信息、通过营销活动查询页面而形成的查询请求的信息以及通过下单页面而形成的查询请求的信息。
可选地,查询请求包括商品查询任务的请求,查询对象为待查询商品,查询对象的标识信息包括商品ID。
目标缓存集群是指用于处理该查询请求的缓存集群。
用于实现“基于查询对象的标识信息和上游服务类型信息,从N个缓存集群中,确定与查询请求对应的目标缓存集群”的方法有多种,本申请对此不作限制,用于实现“基于查询对象的标识信息和上游服务类型信息,从N个缓存集群中,确定与查询请求对应的目标缓存集群”的方法包括:基于查询对象的标识信息和上游服务类型信息,结合路由规则,从N个缓存集群中,确定与查询请求对应的目标缓存集群;路由规则包括标识信息、上游服务类型信息以及缓存集群三者的对应关系。
路由规则需要预先配置。路由规则包括多组对应关系,不同对象关系中查询对象标识信息和/或上游服务类型信息不同。
示例性地,假设先后接收到两个查询请求,分别为查询请求1和查询请求2。其中,查询请求1和查询请求2均是对商品ID为010的商品的查询请求,但是查询请求1的上游服务类型信息表明查询请求1为通过达人橱窗页面而形成的商品查询请求,查询请求2的上游服务类型信息表明查询请求2为通过下单页面而形成的商品查询请求。该查询处理***包括缓存集群1和缓存集群2,缓存集群1和缓存集群2均可以对查询请求1和查询请求2进行处理。但是,因缓存集群1的故障率较高,而缓存集群2的故障率较低。
由于通过下单页面形成的商品查询请求的重要程度高于通过其他页面形成的商品查询请求的重要程度,设置路由规则包括对应关系3和对应关系4,其中对应关系3指示商品ID为001的商品至025的商品,且由下单页面形成的商品查询请求与缓存集群2对应;对应关系4指示商品ID为001的商品至025的商品,且由非下单页面形成的商品查询请求与缓存集群1对应。
基于该路由规则中的对应关系3,确定缓存集群2为查询请求2的目标缓存集群。基于该路由规则中的对应关系4,确定缓存集群1为查询请求1的目标缓存集群。
在上述技术方案的基础上,可选地,该总控设备配置路由规则。可选地,缓存集群标识信息为缓存集群编号。配置路由规则包括,为各缓存集群配置编号,并建立查询对象标识信息、上游服务类型信息与缓存集群编号的对应关系。
缓存集群用于对其接收到的查询请求进行处理,是指,缓存集群基于其接受到的查询对象的标识信息,查询到除查询对象的标识信息所包括的属性信息之外的其他属性信息。如基于商品ID查询商品的详情信息(即商品的全部属性信息)。
需要指出的是,在实际中,查询请求可能仅包括商品查询任务,也可能除包括商品查询任务外还包括其他任务。
示例性地,商家希望创建某营销活动,将商品A与商品B搭配在一起以活动价进行销售,商家通过其所持终端的客户端向总控设备发送搭配创建请求,搭配创建请求包括商品A与商品B的标识信息(如商品A的链接与商品B的链接)。响应于该搭配创建请求,总控设备需要向客户端返回可搭配商品最小库存单元列表,以辅助商家进一步选择将哪些最小库单元作为参与营销活动的商品,或者为各最小库单元设置活动价格等,进而实现营销活动的创建。此处,搭配创建请求包括商品查询任务,属于本申请提及的查询查询请求,且搭配创建请求仅包括商品查询任务。
又或者,在购买商品场景中,买家通过其所持终端的客户端打开待购买商品的商品详情页,选择商品属性(如颜色、尺码等),锁定最小库存单元后,选择“立即购买”选项,生成下单请求。下单请求包括买家希望购买的商品的标识信息。客户端将下单请求发送至总控设备。响应于该下单请求,总控设备需要向客户端返回该商品的查询结果,已实现确定该商品的可买态和/或进行客户端的页面渲染等事项。此外,总控设备还需要向客户端返回该商品所参与的营销活动。此处,下单请求包括商品查询任务,属于本申请提及的查询查询请求。此外,该下单请求还包括营销活动查询任务。
上述技术方案通过设置查询处理***包括N个缓存集群均通讯连接;N为大于或等于2的正整数,并设置总控设备用于接收查询请求,并基于查询对象的标识信息和上游服务类型信息,从N个缓存集群中,确定与查询请求对应的目标缓存集群;将查询请求发送至目标缓存集群。上述技术方案中,由于并不会将每一个查询请求发送至所有的缓存集群,对于任一缓存集群,其不需要处理所有的查询请求,仅需要处理少部分分配至其处的查询请求,可以充分降低单个缓存集群的流量压力,可以降低网络拥塞,进而避免因网络拥塞导致的卡顿和延时。采用上述技术方案,通过增加缓存集群的数目,可以实现任意扩容,即可实现无上限支撑流量增长。
此外,从图1中的查询处理***升级改造为本申请提及的查询处理***,升级改造的难度较小,改造投入较小,改造耗时短。
在上述技术方案中,可选地,各缓存集群均包括M个缓存数据存储设备,各缓存数据存储设备均与总控设备通讯连接;隶属于同一缓存集群中的任意两个缓存数据存储设备所存储的数据至少部分不同;M为大于或等于2的正整数;当目标缓存集群对其接收到的查询请求进行处理时,隶属于目标缓存集群中的各缓存数据存储设备均对查询请求进行处理,得到M个第一子查询处理结果,将M个第一子查询处理结果汇总,作为第一查询处理结果。
在一个实施例中,缓存数据存储设备具体可以为redis物理集群。
通过设置各缓存集群均包括M个缓存数据存储设备,是指,利用多个缓存数据存储设备,共同对商品的属性信息进行存储,M个缓存数据存储设备在该查询处理***中的地位是平等的。
隶属于同一缓存集群中的任意两个缓存数据存储设备所存储的数据至少部分不同,是指,同一缓存集群中的任意两个缓存数据存储设备所存储的数据不完全相同。示例性地,某缓存集群包括2个缓存数据存储设备,其中一个缓存数据存储设备用于存储商品的用户评价信息,另一个缓存数据存储设备用于存储商品的名称及用于展示商品属性的图片信息。显然,与图1中的方案相比,这样设置可以实现扩容的目的,可以解决单个redis物理集群数据存储容量有限的问题。
在上述各技术方案的基础上,可选地,该查询处理***还包括源集群,源集群与总控设备通讯连接;总控设备基于第一查询处理结果,判断目标缓存集群对查询请求是否处理成功。若目标缓存集群对查询请求处理成功,总控设备将第一查询处理结果发送至客户端。若目标缓存集群对查询请求处理失败,总控设备将查询请求发送至源集群;源集群对该查询请求进行处理,得到第二查询处理结果,并将第二查询处理结果发送至总控设备;总控设备将第二查询处理结果发送至客户端。
本领域技术人员可以理解,目标缓存集群对查询请求处理的处理结果包括两种情况,查询请求处理成功和查询请求处理失败。查询请求处理成功,是指查询到查询请求中查询对象的其他属性信息。查询请求处理失败,是指未查询到查询请求中查询对象的其他属性信息。出现查询请求处理失败的原因有多种,如,目标缓存集群中未存储有查询对象的属性信息,或者,目标缓存集群故障。
源集群可以持久化地对商品的属性信息进行存储。源集群包括全部的商品信息。通过设置在目标缓存集群对查询请求处理失败的情况下,利用源集群对查询请求进行处理,可以确保最终返回至客户端的查询处理结果(即第二查询处理结果),是对用户有用的,是用户需要的结果。
进一步地,将第二查询处理结果保存至各缓存集群中。对于目标缓存集群中未存储有查询对象的属性信息的情况,由于在查询查询对象时,优先查询缓存集群,将第二查询处理结果保存至各缓存集群中,可以确保后续再次出现查询该查询对象的查询请求时,能够快速得到该查询对象的查询结果,提高该查询对象的查询效率。
在一个实施例中,源集群通过MySQL实现。
在实际中,N个缓存集群存储的缓存数据可以相同,也可以不同。
若N个缓存集群存储的缓存数据相同,在对路由规则进行配置时,可以降低路由规则的配置难度,提高路由规则的配置效率。在某个缓存集群故障时,便于更新该路由规则。
图3为本公开实施例提供的一种查询处理方法的流程图。参见图3,该查询处理方法由图2中查询处理***中的总控设备执行。参见图3,该查询处理方法包括:
S110、获取客户端发送的查询请求;查询请求包括查询对象的标识信息和上游服务类型信息。
S120、基于查询对象的标识信息和上游服务类型信息,从N个缓存集群中,确定与查询请求对应的目标缓存集群;N为大于或等于2的正整数。
S130、将查询请求发送至目标缓存集群。
S140、接收目标缓存集群发送的第一查询处理结果,第一查询处理结果由目标缓存集群对查询请求进行处理得到。
S150、将第一查询处理结果发送至客户端。
上述技术方案通过设置获取客户端发送的查询请求;查询请求包括查询对象的标识信息和上游服务类型信息;基于查询对象的标识信息和上游服务类型信息,从N个缓存集群中,确定与查询请求对应的目标缓存集群;N为大于或等于2的正整数;将查询请求发送至目标缓存集群。上述技术方案中,由于并不会将每一个查询请求发送至所有的缓存集群,对于任一缓存集群,其不需要处理所有的查询请求,仅需要处理少部分分配至其处的查询请求,可以充分降低单个缓存集群的流量压力,可以降低网络拥塞,进而避免因网络拥塞导致的卡顿和延时。采用上述技术方案,通过增加缓存集群的数目,可以实现任意扩容,即可实现无上限支撑流量增长。
进一步地,N个缓存集群存储的缓存数据相同。
进一步地,S120可替换为:基于查询对象的标识信息和上游服务类型信息,结合路由规则,从N个缓存集群中,确定与查询请求对应的目标缓存集群;路由规则包括标识信息、上游服务类型信息以及缓存集群三者的对应关系。
进一步地,S150之前,该方法还包括:
基于第一查询处理结果,判断目标缓存集群对查询请求是否处理成功;S150可替换为:若目标缓存集群对查询请求处理成功,将第一查询处理结果发送至客户端;若目标缓存集群对查询请求处理失败,将查询请求发送至源集群;接收源集群发送的第二查询处理结果,第二查询处理结果由源集群对查询请求进行处理得到;将第二查询处理结果发送至客户端。
进一步地,该方法还包括:将第二查询处理结果保存至各缓存集群中。
进一步地,各缓存集群均包括M个缓存数据存储设备,隶属于同一缓存集群中的任意两个缓存数据存储设备所存储的数据至少部分不同;M为大于或等于2的正整数;
第一查询处理结果为M个第一子查询处理结果的汇总结果,第一子查询处理结果由目标缓存集群中一个缓存数据存储设备对查询请求进行处理得到。
进一步地,查询请求为包括商品查询任务的请求,查询对象为待查询商品,查询对象的标识信息为商品ID。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
图4为本公开实施例中的一种查询处理装置的结构示意图。本公开实施例所提供的查询处理装置可以配置于图2中的总控设备中。参见图4,该查询处理装置具体包括:
获取模块310,用于获取客户端发送的查询请求;所述查询请求包括查询对象的标识信息和上游服务类型信息;
路由控制模块320,用于基于所述查询对象的标识信息和上游服务类型信息,从N个缓存集群中,确定与所述查询请求对应的目标缓存集群;N为大于或等于2的正整数;
第一发送模块330,用于将所述查询请求发送至所述目标缓存集群;
接收模块340,用于接收所述目标缓存集群发送的第一查询处理结果,所述第一查询处理结果由所述目标缓存集群对所述查询请求进行处理得到;
第二发送模块350,用于将所述第一查询处理结果发送至所述客户端。
进一步地,N个所述缓存集群存储的缓存数据相同。
进一步地,路由控制模块320,用于基于所述查询对象的标识信息和上游服务类型信息,结合路由规则,从N个缓存集群中,确定与所述查询请求对应的目标缓存集群;所述路由规则包括标识信息、上游服务类型信息以及缓存集群三者的对应关系。
进一步地,该装置还包括判断模块,判断模块用于在将所述第一查询处理结果发送至所述客户端之前,基于所述第一查询处理结果,判断所述目标缓存集群对所述查询请求是否处理成功;
所述第二发送模块,用于若所述目标缓存集群对所述查询请求处理成功,将所述第一查询处理结果发送至所述客户端。
所述第一发送模块,还用于若所述目标缓存集群对所述查询请求处理失败,将所述查询请求发送至源集群;
所述接收模块,还用于接收所述源集群发送的第二查询处理结果,所述第二查询处理结果由所述源集群对所述查询请求进行处理得到;
所述第二发送模块,还用于将所述第二查询处理结果发送至所述客户端。
进一步地,所述装置还包括保存模块,所述保存模块还用于将所述第二查询处理结果保存至各所述缓存集群中。
进一步地,各所述缓存集群均包括M个缓存数据存储设备,隶属于同一所述缓存集群中的任意两个所述缓存数据存储设备所存储的数据至少部分不同;M为大于或等于2的正整数;
所述第一查询处理结果为M个第一子查询处理结果的汇总结果,所述第一子查询处理结果由所述目标缓存集群中一个所述缓存数据存储设备对所述查询请求进行处理得到。
进一步地,所述查询请求为包括商品查询任务的请求,所述查询对象为待查询商品,所述查询对象的标识信息包括商品ID。
本公开实施例提供的查询处理装置,可执行本公开方法实施例所提供的查询处理方法中客户端或服务端所执行的步骤,具备执行步骤和有益效果,此处不再赘述。
图5为本公开实施例中的一种电子设备的结构示意图。下面具体参考图5,其示出了适于用来实现本公开实施例中的电子设备1000的结构示意图。本公开实施例中的电子设备1000可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)、可穿戴电子设备等等的移动终端以及诸如数字TV、台式计算机、智能家居设备等等的固定终端。图5示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图5所示,电子设备1000可以包括处理装置(例如中央处理器、图形处理器等)1001,其可以根据存储在只读存储器(ROM)1002中的程序或者从存储装置1008加载到随机访问存储器(RAM)1003中的程序而执行各种适当的动作和处理以实现如本公开所述的实施例的查询处理方法。在RAM 1003中,还存储有电子设备1000操作所需的各种程序和信息。处理装置1001、ROM 1002以及RAM 1003通过总线1004彼此相连。输入/输出(I/O)接口1005也连接至总线1004。
通常,以下装置可以连接至I/O接口1005:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置1006;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置1007;包括例如磁带、硬盘等的存储装置1008;以及通信装置1009。通信装置1009可以允许电子设备1000与其他设备进行无线或有线通信以交换信息。虽然图5示出了具有各种装置的电子设备1000,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码,从而实现如上所述的查询处理方法。在这样的实施例中,该计算机程序可以通过通信装置1009从网络上被下载和安装,或者从存储装置1008被安装,或者从ROM 1002被安装。在该计算机程序被处理装置1001执行时,执行本公开实施例的方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的信息信号,其中承载了计算机可读的程序代码。这种传播的信息信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
在一些实施方式中,客户端、服务器可以利用诸如HTTP(HyperText TransferProtocol,超文本传输协议)之类的任何已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字信息通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”),广域网(“WAN”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何已知或未来研发的网络。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:
获取客户端发送的查询请求;所述查询请求包括查询对象的标识信息和上游服务类型信息;
基于所述查询对象的标识信息和上游服务类型信息,从N个缓存集群中,确定与所述查询请求对应的目标缓存集群;N为大于或等于2的正整数;
将所述查询请求发送至所述目标缓存集群;
接收所述目标缓存集群发送的第一查询处理结果,所述第一查询处理结果由所述目标缓存集群对所述查询请求进行处理得到;
将所述第一查询处理结果发送至所述客户端。
可选的,当上述一个或者多个程序被该电子设备执行时,该电子设备还可以执行上述实施例所述的其他步骤。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上***(SOC)、复杂可编程逻辑设备(CPLD)等等。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行***、装置或设备使用或与指令执行***、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体***、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
根据本公开的一个或多个实施例,本公开提供了一种电子设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本公开提供的任一所述的查询处理方法。
根据本公开的一个或多个实施例,本公开提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本公开提供的任一所述的查询处理方法。
本公开实施例还提供了一种计算机程序产品,该计算机程序产品包括计算机程序或指令,该计算机程序或指令被处理器执行时实现如上所述的查询处理方法。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (13)
1.一种查询处理方法,其特征在于,包括:
获取客户端发送的查询请求;所述查询请求包括查询对象的标识信息和上游服务类型信息;
基于所述查询对象的标识信息和上游服务类型信息,从N个缓存集群中,确定与所述查询请求对应的目标缓存集群;N为大于或等于2的正整数;
将所述查询请求发送至所述目标缓存集群;
接收所述目标缓存集群发送的第一查询处理结果,所述第一查询处理结果由所述目标缓存集群对所述查询请求进行处理得到;
将所述第一查询处理结果发送至所述客户端。
2.根据权利要求1所述的查询处理方法,其特征在于,N个所述缓存集群存储的缓存数据相同。
3.根据权利要求1所述的查询处理方法,其特征在于,所述基于所述查询对象的标识信息和上游服务类型信息,从N个缓存集群中,确定与所述查询请求对应的目标缓存集群,包括:
基于所述查询对象的标识信息和上游服务类型信息,结合路由规则,从N个缓存集群中,确定与所述查询请求对应的目标缓存集群;所述路由规则包括标识信息、上游服务类型信息以及缓存集群三者的对应关系。
4.根据权利要求1所述的查询处理方法,其特征在于,所述将所述第一查询处理结果发送至所述客户端之前,还包括:
基于所述第一查询处理结果,判断所述目标缓存集群对所述查询请求是否处理成功;
所述将所述第一查询处理结果发送至所述客户端,包括:
若所述目标缓存集群对所述查询请求处理成功,将所述第一查询处理结果发送至所述客户端;
所述方法还包括:
若所述目标缓存集群对所述查询请求处理失败,将所述查询请求发送至源集群;
接收所述源集群发送的第二查询处理结果,所述第二查询处理结果由所述源集群对所述查询请求进行处理得到;
将所述第二查询处理结果发送至所述客户端。
5.根据权利要求4所述的查询处理方法,其特征在于,还包括:
将所述第二查询处理结果保存至各所述缓存集群中。
6.根据权利要求1所述的查询处理方法,其特征在于,
各所述缓存集群均包括M个缓存数据存储设备,隶属于同一所述缓存集群中的任意两个所述缓存数据存储设备所存储的数据至少部分不同;M为大于或等于2的正整数;
所述第一查询处理结果为M个第一子查询处理结果的汇总结果,所述第一子查询处理结果由所述目标缓存集群中一个所述缓存数据存储设备对所述查询请求进行处理得到。
7.根据权利要求1-6任一项所述的查询处理方法,其特征在于,
所述查询请求为包括商品查询任务的请求,所述查询对象为待查询商品;所述查询对象的标识信息包括商品ID。
8.一种查询处理***,其特征在于,包括:客户端、总控设备及N个缓存集群;所述总控设备与所述客户端、以及N个所述缓存集群均通讯连接;N为大于或等于2的正整数;
所述客户端生成查询请求,并将所述查询请求发送至所述总控设备;所述查询请求包括查询对象的标识信息和上游服务类型信息;
所述总控设备接收所述查询请求,并基于所述查询对象的标识信息和上游服务类型信息,从N个所述缓存集群中,确定与所述查询请求对应的目标缓存集群;将所述查询请求发送至所述目标缓存集群;
所述缓存集群对其接收到的所述查询请求进行处理,形成第一查询处理结果;
所述总控设备接收所述目标缓存集群发送的第一查询处理结果,以及将所述第一查询处理结果发送至所述客户端。
9.根据权利要求8所述的***,其特征在于,各所述缓存集群均包括M个缓存数据存储设备,各所述缓存数据存储设备均与所述总控设备通讯连接;隶属于同一所述缓存集群中的任意两个所述缓存数据存储设备所存储的数据至少部分不同;M为大于或等于2的正整数;
当所述目标缓存集群对其接收到的所述查询请求进行处理时,隶属于所述目标缓存集群中的各所述缓存数据存储设备均对所述查询请求进行处理,得到M个第一子查询处理结果,将M个所述第一子查询处理结果汇总,作为第一查询处理结果。
10.根据权利要求8所述的***,其特征在于,还包括源集群,所述源集群与所述总控设备通讯连接;
所述总控设备基于所述第一查询处理结果,判断所述目标缓存集群对所述查询请求是否处理成功;
若所述目标缓存集群对所述查询请求处理成功,所述总控设备将所述第一查询处理结果发送至所述客户端;
若所述目标缓存集群对所述查询请求处理失败,所述总控设备将所述查询请求发送至所述源集群;所述源集群对所述查询请求进行处理,得到第二查询处理结果,并将所述第二查询处理结果发送至所述总控设备;所述总控设备将所述第二查询处理结果发送至所述客户端。
11.一种查询处理装置,其特征在于,包括:
获取模块,用于获取客户端发送的查询请求;所述查询请求包括查询对象的标识信息和上游服务类型信息;
路由控制模块,用于基于所述查询对象的标识信息和上游服务类型信息,从N个缓存集群中,确定与所述查询请求对应的目标缓存集群;N为大于或等于2的正整数;
第一发送模块,用于将所述查询请求发送至所述目标缓存集群;
接收模块,用于接收所述目标缓存集群发送的第一查询处理结果,所述第一查询处理结果由所述目标缓存集群对所述查询请求进行处理得到;
第二发送模块,用于将所述第一查询处理结果发送至所述客户端。
12.一种电子设备,其特征在于,所述电子设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一项所述的方法。
13.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211713914.3A CN118277423A (zh) | 2022-12-29 | 2022-12-29 | 查询处理方法、装置、***、电子设备以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211713914.3A CN118277423A (zh) | 2022-12-29 | 2022-12-29 | 查询处理方法、装置、***、电子设备以及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118277423A true CN118277423A (zh) | 2024-07-02 |
Family
ID=91636574
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211713914.3A Pending CN118277423A (zh) | 2022-12-29 | 2022-12-29 | 查询处理方法、装置、***、电子设备以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118277423A (zh) |
-
2022
- 2022-12-29 CN CN202211713914.3A patent/CN118277423A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2023078225A1 (zh) | 信息显示方法、装置、电子设备和存储介质 | |
CN110619078B (zh) | 用于推送信息的方法和装置 | |
CN111444356A (zh) | 基于搜索的推荐方法及装置 | |
CN112884405A (zh) | 一种询价***及其调度方法 | |
CN111242696A (zh) | 一种广告***方法、装置、电子设备及计算机存储介质 | |
CN110351581B (zh) | 一种数据请求处理方法、装置、终端设备及存储介质 | |
CN113515717B (zh) | 导航页面更新方法、装置、电子设备及存储介质 | |
CN114066363A (zh) | 订单信息处理方法、装置、电子设备和计算机可读介质 | |
CN113159870A (zh) | 推送信息的展示方法、装置及计算机设备 | |
CN113032702A (zh) | 一种页面加载方法和装置 | |
US20140222559A1 (en) | Method and system of customer level transaction analytics across merchant sites | |
CN111652694B (zh) | 订单处理方法、装置和电子设备 | |
CN118277423A (zh) | 查询处理方法、装置、***、电子设备以及存储介质 | |
CN109684015B (zh) | 界面数据的加载方法、装置、电子设备及存储介质 | |
CN111784376B (zh) | 用于处理信息的方法和装置 | |
CN113450170A (zh) | 一种信息显示方法和装置 | |
CN113191840A (zh) | 物品信息显示方法、装置、电子设备和计算机可读介质 | |
CN113112285A (zh) | 数据分析方法和装置 | |
CN109426997B (zh) | 用于处理信息的方法、装置及服务器 | |
CN112819490A (zh) | 一种预告秒杀广告的装置和方法 | |
CN108831012B (zh) | 一种贩售机的售货方法和装置 | |
CN111488537A (zh) | 一种页面展示的方法和装置 | |
WO2023217135A1 (zh) | 一种信息展示方法、装置、电子设备以及存储介质 | |
WO2023241333A1 (zh) | 信息展示方法、装置、电子设备以及存储介质 | |
WO2023246350A1 (zh) | 一种信息显示方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication |