CN117424885A - 高并发场景下的数据调用方法、系统、装置、设备及介质 - Google Patents
高并发场景下的数据调用方法、系统、装置、设备及介质 Download PDFInfo
- Publication number
- CN117424885A CN117424885A CN202311227070.6A CN202311227070A CN117424885A CN 117424885 A CN117424885 A CN 117424885A CN 202311227070 A CN202311227070 A CN 202311227070A CN 117424885 A CN117424885 A CN 117424885A
- Authority
- CN
- China
- Prior art keywords
- data
- calling
- service
- return data
- party
- 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
- 238000000034 method Methods 0.000 title claims abstract description 57
- 230000015654 memory Effects 0.000 claims description 27
- 238000004891 communication Methods 0.000 claims description 12
- 230000008859 change Effects 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 9
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000012546 transfer Methods 0.000 description 3
- 239000007787 solid Substances 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 241000508269 Psidium Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L67/025—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及数据调用技术领域,公开了一种高并发场景下的数据调用方法、系统、装置、设备及介质,该方法应用于调用方,包括:当向服务方发送服务请求时,通过预设数据同步工具包查询本地缓存是否存储有服务方的返回数据;若本地缓存存储有服务方的返回数据,则直接调用服务方的返回数据;若本地缓存没有存储服务方的返回数据,则通过远程调用方式向服务方请求生成返回数据,并对返回数据进行调用。本发明通过预设数据同步工具包实现了当服务方不可用时,调用方仍能够正常调用本地缓存数据的目的,解决了当服务方不可用时,调用方受到影响导致调用功能无法使用的问题。
Description
技术领域
本发明涉及数据调用技术领域,具体涉及一种高并发场景下的数据调用方法、系统、装置、设备及介质。
背景技术
分布式服务部署有很多的优点。比如减少单个服务的部署时间,提高整体服务对外提供的访问能力,解耦(不会造成一台服务崩溃而所有功能皆不可用的情况)。在高并发的场景,如果让流量直接调用数据库,会把数据库给打爆。目前主流的技术在这种场景下,会增加本地和服务器两级缓存,本地缓存通常使用HashMap(基于哈希表的Map接口)、GuavaCache(google开源的本地缓存工具库)、Caffeine(基于Java 8的最佳缓存框架)、Cache2K(Java本地缓存库)。服务器缓存使用redis(内存数据库)。
如图1所示,在针对高并发流量场景时,会使用两级缓存(本地缓存+redis缓存)的方式去做应对,通常这种方式足以应对绝大部分的场景。但是在某些极端情况下,这种方式也存在它的问题,如果本地缓存到期了,这时redis缓存服务器崩溃了会导致调用方的所有流量都会集中到数据库,这时数据库会有崩溃的风险,当前服务方就不可用,例如,网约车订单调用方A下单前需要去服务B查询渠道开通了哪些订单品类,如果这时服务B崩溃了,调用方A就无法下订单,同时在没有降级处理的情况下,调用方服务也会受到影响,从而造成整个功能不可用。
发明内容
有鉴于此,本发明提供了一种高并发场景下的数据调用方法、系统、装置、设备及介质,以解决当服务方不可用时,调用方受到影响导致调用功能无法使用的问题。
第一方面,本发明提供了一种高并发场景下的数据调用方法,应用于调用方,该方法包括:
当向服务方发送服务请求时,通过预设数据同步工具包查询本地缓存是否存储有服务方的返回数据;
若本地缓存存储有服务方的返回数据,则直接调用服务方的返回数据;
若本地缓存没有存储服务方的返回数据,则通过远程调用方式向服务方请求生成返回数据,并对返回数据进行调用。
本发明实施例提供的高并发场景下的数据调用方法,将预设数据同步工具包作为调用方和服务方的中转站,将服务方的返回数据存储在调用方的本地缓存,当向服务方发送服务请求时,首先通过预设数据同步工具查询本地缓存是否存储有服务方的返回数据,若有存储,则直接调用服务方的返回数据,若没有存储,则通过远程调用方式向服务方请求生成返回数据,并对返回数据进行调用,通过预设数据同步工具包实现了当服务方不可用时,调用方仍能够正常调用本地缓存数据的目的,解决了当服务方不可用时,调用方受到影响导致调用功能无法使用的问题。
在一种可选的实施方式中,预设数据同步工具包包括调用方所需的多个服务方接口,每个服务方接口对应一个服务请求。
在一种可选的实施方式中,通过预设数据同步工具包查询本地缓存是否存储有服务方的返回数据包括:
当向服务方发送服务请求时,调用与服务请求对应的服务方接口,并将服务请求对应的返回数据存储在本地缓存中。
本发明实施例提供的高并发场景下的数据调用方法,预设数据同步工具包提供了各种查询相关业务数据的服务方的接口,调用方通过调用预设数据同步工具包的接口可以获得服务方的数据,通过预设数据同步工具包将服务请求对应的返回数据存储在本地缓存中,使得本地缓存中一直有数据,当服务方不可用时,不影响调用方的数据调用,保证调用方正常使用。
在一种可选的实施方式中,若本地缓存没有存储服务方的返回数据,则通过远程调用方式向服务方请求生成返回数据,并对返回数据进行调用包括:
通过远程调用方式直接向服务方发送服务请求,使得服务方根据服务请求生成返回数据;
通过预设数据同步工具包将返回数据存储在本地缓存中;
从本地缓存中调用返回数据。
本发明实施例提供的高并发场景下的数据调用方法,当调用方的本地缓存中未存储调用方所需的返回数据时,通过远程调用方式直接向服务方发送服务请求也可以获得调用方的返回数据,保证了调用方从多角度获得返回数据的通道。
在一种可选的实施方式中,高并发场景下的数据调用方法还包括:当服务方返回数据发生变更时,接收服务方的变更通知消息,并通过远程调用方式拉取服务方变更后的返回数据,将变更后的返回数据存储在本地缓存中。
本发明实施例提供的高并发场景下的数据调用方法,通过拉取服务方变更后的返回数据,将变更后的返回数据存储在本地缓存中,使得本地缓存中的数据与服务方的数据库中的数据保持一致,本地缓存中的数据为最新版本,保证调用方的数据调用为最新版本。
第二方面,本发明提供了一种高并发场景下的数据调用系统,该系统包括:
调用方,用于执行上述第一方面或其对应的任一实施方式的高并发场景下的数据调用方法;
预设数据同步工具包,与调用方通信连接,用于将服务请求对应的返回数据存储在调用方的本地缓存中供调用方调用;
服务方,与预设数据同步工具包通信连接,用于接收调用方的服务请求,并通过预设数据同步工具包向调用方发送返回数据。
第三方面,本发明提供了一种高并发场景下的数据调用装置,应用于调用方,该装置包括:
数据查询模块,用于当向服务方发送服务请求时,通过预设数据同步工具包查询本地缓存是否存储有服务方的返回数据;
第一调用模块,用于若本地缓存存储有服务方的返回数据,则直接调用所述服务方的返回数据;
第二调用模块,用于若本地缓存没有存储服务方的返回数据,则通过远程调用方式向服务方请求生成返回数据,并对返回数据进行调用。
第四方面,本发明提供了一种计算机设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面或其对应的任一实施方式的高并发场景下的数据调用方法。
第五方面,本发明提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的高并发场景下的数据调用方法。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是现有技术中高并发流量场景时的调用流程图;
图2是根据本发明实施例的高并发场景下的数据调用方法的流程示意图;
图3是根据本发明实施例的另一高并发场景下的数据调用方法的流程示意图;
图4是根据本发明实施例的又一高并发场景下的数据调用方法的流程示意图;
图5是根据本发明实施例的高并发场景下的数据调用方法中本地缓存更新的流程示意图;
图6是根据本发明实施例的高并发场景下的数据调用系统的结构框图;
图7是根据本发明实施例的高并发场景下的数据调用装置的结构框图;
图8是本发明实施例的计算机设备的硬件结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
根据本发明实施例,提供了一种高并发场景下的数据调用方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
在本实施例中提供了一种高并发场景下的数据调用方法,可用于调用方,图1是根据本发明实施例的高并发场景下的数据调用方法的流程图,如图1所示,该流程包括如下步骤:
步骤S101,当向服务方发送服务请求时,通过预设数据同步工具包查询本地缓存是否存储有服务方的返回数据。具体地,为了更好的说明服务方和调用方的通信,本发明实施例中运用内存数据库redis的发布订阅模式。内存数据库redis发布/订阅(redispub-sub)是一种通信机制,将数据推到某个信息管道中,其他客户端可通过订阅这些管道来获取推送信息,以此用于消息的传输。发布订阅模式的参与者由三部分组成:发布者(Publisher)、频道(Channel)、订阅者(Subscriber)。服务方相当于是发布者,调用方相当于是订阅者,频道相当于服务方多个接口,每个接口均有与调用方需求对应的数据信息。服务方发布的消息分到不同的接口,不需要知道调用方信息。调用方对一个或多个服务方接口的内容感兴趣,接收感兴趣的消息,即服务方的返回数据,不需要知道服务方信息。
预设数据同步工具包(Software Development Kit,简称sdk)为服务方提供给调用方,sdk提供了各种调用方查询相关业务数据的服务方接口,调用方通过调用sdk的服务方接口获得服务方的返回数据,sdk里面提供了多个调用方需要的服务方接口,通过服务方接口调用方可以从服务方那里获取到需求数据。以触发业务为例,当触发业务场景的时候,调用方通过预设数据同步工具包里的服务方接口可以获取到执行业务逻辑时需要的数据。例如下订单场景时,调用方通过预设数据同步工具包里的服务方接口获取商品仓库服务(商品仓库服务即服务方)商品剩余的数量。通过预设数据同步工具包将服务方的返回数据存储在调用方的本地缓存中。当向服务方发送服务请求时,通过预设数据同步工具包首先查询是否存储有服务方的返回数据。
步骤S102,若本地缓存存储有服务方的返回数据,则直接调用服务方的返回数据。具体地,当调用方的本地缓存存储有服务方的返回数据时,说明调用方之前向服务方发送过相同请求,服务方通过预设数据同步工具包已经将返回数据存储至调用方的本地缓存中,此时,调用方直接调用存储在本地缓存中服务方的返回数据。
步骤S103,若本地缓存没有存储服务方的返回数据,则通过远程调用方式向服务方请求生成返回数据,并对返回数据进行调用。具体地,当调用方的本地缓存没有存储服务方的返回数据时,说明调用方之前未向服务方发送过相同请求,需要通过远程调用方式向服务方发送请求并生成返回数据,调用方对返回数据进行调用。
本发明实施例提供的高并发场景下的数据调用方法,将预设数据同步工具包作为调用方和服务方的中转站,将服务方的返回数据存储在调用方的本地缓存,当向服务方发送服务请求时,首先通过预设数据同步工具查询本地缓存是否存储有服务方的返回数据,若有存储,则直接调用服务方的返回数据,若没有存储,则通过远程调用方式向服务方请求生成返回数据,并对返回数据进行调用,通过预设数据同步工具包实现了当服务方不可用时,调用方仍能够正常调用本地缓存数据的目的,解决了当服务方不可用时,调用方受到影响导致调用功能无法使用的问题。
在本实施例中提供了一种高并发场景下的数据调用方法,可用于调用方,图2是根据本发明实施例的高并发场景下的数据调用方法的流程图,如图2所示,该流程包括如下步骤:
步骤S201,当向服务方发送服务请求时,通过预设数据同步工具包查询本地缓存是否存储有服务方的返回数据。具体地,预设数据同步工具包包括调用方所需的多个服务方接口,每个服务方接口对应一个服务请求。通过预设数据同步工具包查询本地缓存是否存储有服务方的返回数据包括:当向服务方发送服务请求时,调用与服务请求对应的服务方接口,并将服务请求对应的返回数据存储在本地缓存中。当向服务方发送服务请求时,通过预设数据同步工具包首先查询是否存储有服务方的返回数据。
步骤S202,若本地缓存存储有服务方的返回数据,则直接调用服务方的返回数据。详细请参见图1所示实施例的步骤S201,在此不再赘述。
步骤S203,若本地缓存没有存储服务方的返回数据,则通过远程调用方式向服务方请求生成返回数据,并对返回数据进行调用。
具体地,上述步骤S203包括:
步骤S2031,通过远程调用方式直接向服务方发送服务请求,使得服务方根据服务请求生成返回数据。具体地,远程调用服务是一种编程模型和通信协议,用于实现不同进程之间的方法调用和通信,方法调用在本发明实施例中指的是服务方接口的调用。
在一些可选的实施方式中,上述步骤S2031包括:
步骤a1,调用方调用:即调用方发起一个服务方接口调用请求。
步骤a2,服务方接收:远程服务方接收到调用方的请求,并解析请求中的服务方接口调用和参数信息。
步骤a3,服务方接口调用执行:服务方根据请求中的服务方接口调用和参数信息,在本地进程中执行相应的服务方接口;
步骤a4,返回数据:服务方将执行的结果打包并通过网络发送回调用方。
步骤S2032,通过预设数据同步工具包将返回数据存储在本地缓存中。具体地,通过预设数据同步工具包将服务方的返回数据存储在调用方的本地缓存中。
步骤S2033,从本地缓存中调用返回数据。具体地,调用方通过预设数据同步工具包查询本地缓存存储有服务方的返回数据,将本地缓存中存储的返回数据进行调用。
本发明实施例提供的高并发场景下的数据调用方法,预设数据同步工具包提供了各种查询相关业务数据的服务方的接口,调用方通过调用预设数据同步工具包的接口可以获得服务方的数据,通过预设数据同步工具包将服务请求对应的返回数据存储在本地缓存中,使得本地缓存中一直有数据,当服务方不可用时,不影响调用方的数据调用,保证调用方正常使用。当调用方的本地缓存中未存储调用方所需的返回数据时,通过远程调用方式直接向服务方发送服务请求也可以获得调用方的返回数据,保证了调用方从多角度获得返回数据的通道。
在本实施例中提供了一种高并发场景下的数据调用方法,可用于上述的调用方,图3是根据本发明实施例的高并发场景下的数据调用方法的流程图,如图3所示,该流程包括如下步骤:
步骤S301,当向服务方发送服务请求时,通过预设数据同步工具包查询本地缓存是否存储有服务方的返回数据。详细请参见图2所示实施例的步骤S201,在此不再赘述。
步骤S302,若本地缓存存储有服务方的返回数据,则直接调用服务方的返回数据。详细请参见图2所示实施例的步骤S202,在此不再赘述。
步骤S303,若本地缓存没有存储服务方的返回数据,则通过远程调用方式向服务方请求生成返回数据,并对返回数据进行调用。详细请参见图2所示实施例的步骤S203,在此不再赘述。
步骤S304,当服务方返回数据发生变更时,接收服务方的变更通知消息,并通过远程调用方式拉取服务方变更后的返回数据,将变更后的返回数据存储在本地缓存中。具体地,当服务方的数据库中的数据修改时,通过发布/订阅方式发送消息通知给调用方,调用方这时通过预设数据同步工具包会自动通过远程调用方式拉取服务方最新数据版本,并通过预设数据同步工具包更新本地缓存,这样能保证服务方数据和本地缓存数据的一致性,即调用方的本地缓存数据是最新版本。如图5所示,服务方B的数据库的数据更改时,将服务方数据库(数据库Database,简称db)的修改的变更通知发送给调用方A,此时,变更通知通过发布/订阅方式(redispub-sub)配置的多条订阅通道传输至预设数据同步工具包中,调用方这时通过预设数据同步工具包会自动通过远程调用方式拉取服务方最新数据版本,并通过预设数据同步工具包根据服务方的返回数据更新本地缓存。
本发明实施例提供的高并发场景下的数据调用方法,通过拉取服务方变更后的返回数据,将变更后的返回数据存储在本地缓存中,使得本地缓存中的数据与服务方的数据库中的数据保持一致,本地缓存中的数据为最新版本,保证调用方的数据调用为最新版本。
作为本发明实施例的一个或多个具体应用实施例,在执行本发明实施例提供的高并发场景下的数据调用方法之前,服务方会给调用方提供一个数据同步工具包(SoftwareDevelopment Kit,下述简称sdk),sdk提供了各种调用方查询相关业务数据的服务方接口,调用方通过调用sdk的服务方接口获得服务方的返回数据,sdk里面提供了多个调用方需要的服务方接口,通过服务方接口调用方可以从服务方那里获取到需求数据。该高并发场景下的数据调用方法具体可用于上述的调用方,图4是根据本发明实施例的高并发场景下的数据调用方法的流程图,如图4所示,该流程包括如下步骤:
1)在调用方第一次请求时,sdk会把调用服务方接口的返回数据存储在本地缓存中,以后调用方向服务方发送调用请求时,通过sdk直接读取本地缓存。当触发业务的场景的时候,调用方调用sdk里的服务方接口时可以获取到服务方执行业务逻辑时需要的返回数据。例如下订单场景时,调用方通过sdk里的服务方接口获取商品仓库服务(商品仓库服务即服务方)商品剩余的数量。
2)在调用方再次向服务方发送和第一次请求相同的请求时,sdk会首先查询调用方本地缓存,若本地缓存存储有服务方的返回数据,则直接调用服务方的返回数据。若本地缓存没有存储服务方的返回数据,则通过远程调用方式(Remote Procedure Call,下述简称rpc)调用与sdk中与服务请求对应的服务方接口,服务方根据服务请求生成返回数据,sdk将返回数据存储在调用方的本地缓存,同时调用方调用返回数据,即使服务方崩溃了,调用方仍然有返回数据可调用。
3)当服务方的数据库中的数据修改时,通过发布/订阅方式发送变更消息通知调用方,调用方这时会自动通过远程调用方式拉取服务方最新数据版本,并通过预设数据同步工具包更新本地缓存,如图5所示,服务方B的数据库的数据更改时,将服务方数据库的修改数据db的变更通知发送给调用方A,此时,变更通知通过发布/订阅方式(redis pub-sub)配置的多条订阅通道传输至预设数据同步工具包中,调用方这时通过预设数据同步工具包会自动通过远程调用方式拉取服务方最新数据版本,并通过预设数据同步工具包根据服务方的返回数据更新本地缓存,更新数据操作能保证服务方数据和本地缓存数据的一致性,即调用方的本地缓存数据是最新版本。
本发明实施例提供的高并发场景下的数据调用方法,将预设数据同步工具包作为调用方和服务方的中转站,将服务方的返回数据存储在调用方的本地缓存,当向服务方发送服务请求时,首先通过预设数据同步工具查询本地缓存是否存储有服务方的返回数据,若有存储,则直接调用服务方的返回数据,若没有存储,则通过远程调用方式向服务方请求生成返回数据,并对返回数据进行调用,通过预设数据同步工具包实现了当服务方不可用时,调用方仍能够正常调用本地缓存数据的目的,解决了当服务方不可用时,调用方受到影响导致调用功能无法使用的问题,避免整个服务功能无法使用的情况发生。通过拉取服务方变更后的返回数据,将变更后的返回数据存储在本地缓存中,使得本地缓存中的数据与服务方的数据库中的数据保持一致,本地缓存中的数据为最新版本,保证调用方的数据调用为最新版本。
在本实施例中还提供了一种高并发场景下的数据调用系统,如图6所示,图6是根据本发明实施例的高并发场景下的数据调用系统的结构框图,该系统包括:
调用方601,用于执行上述图1-图4所示的高并发场景下的数据调用方法;
预设数据同步工具包602,与调用方通信连接,用于将服务请求对应的返回数据存储在调用方的本地缓存中供调用方调用;
服务方603,与预设数据同步工具包通信连接,用于接收调用方的服务请求,并通过预设数据同步工具包向调用方发送返回数据。
该系统用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。
在本实施例中还提供了一种高并发场景下的数据调用装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
本实施例提供一种高并发场景下的数据调用装置,如图7所示,包括:
数据查询模块701,用于当向服务方发送服务请求时,通过预设数据同步工具包查询本地缓存是否存储有服务方的返回数据。
第一调用模块702,用于若本地缓存存储有服务方的返回数据,则直接调用所述服务方的返回数据。
第二调用模块703,用于若本地缓存没有存储服务方的返回数据,则通过远程调用方式向服务方请求生成返回数据,并对返回数据进行调用。
在一些可选的实施方式中,第二调用模块703包括:
发送生成单元,用于通过远程调用方式直接向服务方发送服务请求,使得服务方根据服务请求生成返回数据。
存储单元,用于通过预设数据同步工具包将返回数据存储在本地缓存中。
调用单元,用于从本地缓存中调用返回数据。
在一些可选的实施方式中,高并发场景下的数据调用装置还包括:
更新模块,用于当服务方返回数据发生变更时,接收服务方的变更通知消息,并通过远程调用方式拉取服务方变更后的返回数据,将变更后的返回数据存储在本地缓存中。
上述各个模块和单元的更进一步的功能描述与上述对应实施例相同,在此不再赘述。
本实施例中的高并发场景下的数据调用装置是以功能单元的形式来呈现,这里的单元是指ASIC(Application Specific Integrated Circuit,专用集成电路)电路,执行一个或多个软件或固定程序的处理器和存储器,和/或其他可以提供上述功能的器件。
本发明实施例还提供一种计算机设备,具有上述图7所示的高并发场景下的数据调用装置。
请参阅图8,图8是本发明可选实施例提供的一种计算机设备的结构示意图,如图8所示,该计算机设备包括:一个或多个处理器10、存储器20,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相通信连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在计算机设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在一些可选的实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个计算机设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图8中以一个处理器10为例。
处理器10可以是中央处理器,网络处理器或其组合。其中,处理器10还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路,可编程逻辑器件或其组合。上述可编程逻辑器件可以是复杂可编程逻辑器件,现场可编程逻辑门阵列,通用阵列逻辑或其任意组合。
其中,所述存储器20存储有可由至少一个处理器10执行的指令,以使所述至少一个处理器10执行实现上述实施例示出的方法。
存储器20可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据计算机设备的使用所创建的数据等。此外,存储器20可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些可选的实施方式中,存储器20可选包括相对于处理器10远程设置的存储器,这些远程存储器可以通过网络连接至该计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
存储器20可以包括易失性存储器,例如,随机存取存储器;存储器也可以包括非易失性存储器,例如,快闪存储器,硬盘或固态硬盘;存储器20还可以包括上述种类的存储器的组合。
该计算机设备还包括通信接口30,用于该计算机设备与其他设备或通信网络通信。
本发明实施例还提供了一种计算机可读存储介质,上述根据本发明实施例的方法可在硬件、固件中实现,或者被实现为可记录在存储介质,或者被实现通过网络下载的原始存储在远程存储介质或非暂时机器可读存储介质中并将被存储在本地存储介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件的存储介质上的这样的软件处理。其中,存储介质可为磁碟、光盘、只读存储记忆体、随机存储记忆体、快闪存储器、硬盘或固态硬盘等;进一步地,存储介质还可以包括上述种类的存储器的组合。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件,当软件或计算机代码被计算机、处理器或硬件访问且执行时,实现上述实施例示出的方法。
虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
Claims (9)
1.一种高并发场景下的数据调用方法,其特征在于,应用于调用方,所述方法包括:
当向服务方发送服务请求时,通过预设数据同步工具包查询本地缓存是否存储有服务方的返回数据;
若本地缓存存储有服务方的返回数据,则直接调用所述服务方的返回数据;
若本地缓存没有存储服务方的返回数据,则通过远程调用方式向服务方请求生成返回数据,并对返回数据进行调用。
2.根据权利要求1所述的方法,其特征在于,所述预设数据同步工具包包括调用方所需的多个服务方接口,每个所述服务方接口对应一个服务请求。
3.根据权利要求2所述的方法,其特征在于,所述通过预设数据同步工具包查询本地缓存是否存储有服务方的返回数据包括:
当向服务方发送服务请求时,调用与所述服务请求对应的服务方接口,并将所述服务请求对应的返回数据存储在本地缓存中。
4.根据权利要求1所述的方法,其特征在于,若本地缓存没有存储服务方的返回数据,则通过远程调用方式向服务方请求生成返回数据,并对返回数据进行调用包括:
通过远程调用方式直接向服务方发送服务请求,使得服务方根据所述服务请求生成返回数据;
通过预设数据同步工具包将所述返回数据存储在所述本地缓存中;
从所述本地缓存中调用所述返回数据。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:当服务方返回数据发生变更时,接收服务方的变更通知消息,并通过远程调用方式拉取服务方变更后的返回数据,将所述变更后的返回数据存储在本地缓存中。
6.一种高并发场景下的数据调用系统,其特征在于,所述系统包括:
调用方,用于执行如权利要求1至5中任一项所述的高并发场景下的数据调用方法;
预设数据同步工具包,与所述调用方通信连接,用于将服务请求对应的返回数据存储在调用方的本地缓存中供调用方调用;
服务方,与所述预设数据同步工具包通信连接,用于接收调用方的服务请求,并通过所述预设数据同步工具包向调用方发送返回数据。
7.一种高并发场景下的数据调用装置,其特征在于,应用于调用方,所述装置包括:
数据查询模块,用于当向服务方发送服务请求时,通过预设数据同步工具包查询本地缓存是否存储有服务方的返回数据;
第一调用模块,用于若本地缓存存储有服务方的返回数据,则直接调用所述服务方的返回数据;
第二调用模块,用于若本地缓存没有存储服务方的返回数据,则通过远程调用方式向服务方请求生成返回数据,并对返回数据进行调用。
8.一种计算机设备,其特征在于,包括:
存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行权利要求1至5中任一项所述的高并发场景下的数据调用方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机指令,所述计算机指令用于使计算机执行权利要求1至5中任一项所述的高并发场景下的数据调用方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311227070.6A CN117424885A (zh) | 2023-09-21 | 2023-09-21 | 高并发场景下的数据调用方法、系统、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311227070.6A CN117424885A (zh) | 2023-09-21 | 2023-09-21 | 高并发场景下的数据调用方法、系统、装置、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117424885A true CN117424885A (zh) | 2024-01-19 |
Family
ID=89521909
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311227070.6A Pending CN117424885A (zh) | 2023-09-21 | 2023-09-21 | 高并发场景下的数据调用方法、系统、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117424885A (zh) |
-
2023
- 2023-09-21 CN CN202311227070.6A patent/CN117424885A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108196961B (zh) | 一种异步消息处理方法、终端、系统及存储介质 | |
CN106790629A (zh) | 数据同步装置及其实现数据同步的方法、客户端访问系统 | |
CN112350873B (zh) | 应用服务信息处理方法、应用服务调用方法、装置及系统 | |
CN110413418B (zh) | 缓存同步装置及方法,缓存同步系统、电子设备 | |
US20220413937A1 (en) | Node management method, device and apparatus, storage medium, and system | |
KR101528210B1 (ko) | 소프트웨어 다운로드 방법 및 장치 | |
CN107026879B (zh) | 一种数据缓存方法及后台应用系统 | |
JP2023544123A (ja) | データ送信システム、データ送信方法、インテリジェント車両、及び装置 | |
CN110196843B (zh) | 一种基于容器集群的文件分发方法及容器集群 | |
CN112799825A (zh) | 一种任务处理方法和网络设备 | |
CN111258723B (zh) | 分布式系统的事务处理方法、装置、系统、介质及设备 | |
CN112685499B (zh) | 一种工作业务流的流程数据同步方法、装置及设备 | |
CN112328413B (zh) | 应用服务的调用方法、装置及系统 | |
CN110267077B (zh) | 离线缓存方法、装置、终端及可读存储介质 | |
US10129084B1 (en) | Centralized parameter management system | |
CN112416980A (zh) | 数据业务处理方法、装置及设备 | |
CN117424885A (zh) | 高并发场景下的数据调用方法、系统、装置、设备及介质 | |
CN110995890B (zh) | 域名请求的调度方法及装置 | |
CN115361279A (zh) | 配置数据的更新方法、装置、电子设备及计算机可读介质 | |
CN114595081A (zh) | 一种基于缓存存储的响应式rpc调用方法及系统 | |
CN113254097A (zh) | 配置信息的下发方法和装置、电子设备和存储介质 | |
CN113973135A (zh) | 数据缓存处理方法、装置、缓存网格平台和存储介质 | |
CN113138844A (zh) | 虚拟机集群的任务下发方法、管理构件及工作构件 | |
CN112241326A (zh) | 一种应用的全局事件通知方法、装置 | |
CN112688980A (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 |