CN110955688A - 代理服务器、数据查询方法及装置、电子设备和可存储介质 - Google Patents
代理服务器、数据查询方法及装置、电子设备和可存储介质 Download PDFInfo
- Publication number
- CN110955688A CN110955688A CN201911335637.5A CN201911335637A CN110955688A CN 110955688 A CN110955688 A CN 110955688A CN 201911335637 A CN201911335637 A CN 201911335637A CN 110955688 A CN110955688 A CN 110955688A
- Authority
- CN
- China
- Prior art keywords
- module
- data
- target data
- proxy
- query
- 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 54
- 238000004891 communication Methods 0.000 claims description 30
- 238000004590 computer program Methods 0.000 claims description 8
- 230000004044 response Effects 0.000 abstract description 6
- 230000008569 process Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000010354 integration Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000012856 packing Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
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/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2471—Distributed queries
-
- 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/50—Network services
- H04L67/56—Provisioning of proxy services
-
- 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/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例提供了一种代理服务器、数据查询方法及装置、电子设备和可存储介质,所述方法包括:利用所述收发模块接收客户端发送的查询请求;在所述代理缓存模块存储的本地数据中查询与所述查询请求对应的目标数据;若所述本地数据包括所述目标数据,则利用所述收发模块将所述目标数据反馈至所述客户端。本发明实施例提供的代理服务器、数据查询方法及装置、电子设备和可存储介质,能够提高分布式服务器的响应速度。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种代理服务器、数据查询方法及装置、电子设备和可存储介质。
背景技术
随着电子信息技术的不断发展,互联网用户的数量在持续增加,这使得数百亿甚至上千亿的特征数据会作为模型的输入量,导致模型的数据量非常巨大。由于服务器单机内存的限制,对于这些数据量巨大的模型通常需要对模型进行分布式的服务化部署,即通过构建分布式的参数服务器,将大规模的模型进行参数拆分,分别部署到不同的参数服务器上。
然而,模型通过分布式部署不可避免的增加了网络及分布式查询的过程,会存在模型整体对查询请求处理时间较长的问题。
发明内容
本发明实施例的目的在于提供一种代理服务器、数据查询方法及装置、电子设备和可存储介质,以实现降低模型在分布式部署下对查询请求处理的时长,提高分布式服务器的响应速度。具体技术方案如下:
在本发明实施的一方面,首先提供一种代理服务器,应用于分布式服务器,所述分布式服务器还包括至少一个参数服务器,所述代理服务器包括收发模块和代理缓存模块,所述代理缓存模块与所述收发模块电连接,且所述代理缓存模块还用于与所述至少一个参数服务器通信连接。
在本发明实施的又一方面,还提供了一种数据查询方法,应用于如上所述的代理服务器,所述方法包括:
利用所述收发模块接收客户端发送的查询请求;
在所述代理缓存模块存储的本地数据中查询与所述查询请求对应的目标数据;
若所述本地数据包括所述目标数据,则利用所述收发模块将所述目标数据反馈至所述客户端。
在本发明实施的又一方面,还提供了一种数据查询装置,应用于如上所述的代理服务器,包括:
接收模块,用于利用所述收发模块接收客户端发送的查询请求;
查询模块,用于在所述代理缓存模块存储的本地数据中查询与所述查询请求对应的目标数据;
反馈模块,用于若所述本地数据包括所述目标数据,则利用所述收发模块将所述目标数据反馈至所述客户端。
在本发明实施的又一方面,还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一所述的数据查询方法。
在本发明实施的又一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述任一所述的数据查询方法。
在本发明实施的又一方面,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的数据查询方法。
本发明实施例提供的数据查询方法,通过在代理服务器中增加代理缓存模块,并在代理缓存模块中存储常被查询的数据,这样在后续收到客户端发送的查询请求后,可以首先在代理缓存模块中查询,若在所述代理缓存模块存储的本地数据中包括所述查询请求对应的目标数据,则直接将目标数据反馈至客户端,而无需进行代理服务器与参数服务器之间的通信,减少分布式服务器对常用数据的查询时长,提高分布式服务器的响应速度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为包括本发明一实施例提供的代理服务器的分布式服务器的结构示意图;
图2为本发明一实施例提供的数据查询方法的流程图;
图3为本发明另一实施例提供的数据查询方法的流程图;
图4为本发明另一实施例提供的代理服务器中代理缓存模块的结构示意图;
图5为本发明另一实施例提供的代理服务器中数据的存储位置与查询频率的关系示意图;
图6为本发明一实施例提供的数据查询装置的结构示意图;
图7为本发明另一实施例提供的数据查询装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
本发明实施例提供一种代理服务器100,如图1所示,应用于分布式服务器,所述分布式服务器还包括至少一个参数服务器200,所述代理服务器100包括收发模块110和代理缓存模块120,所述代理缓存模块120与所述收发模块110电连接,且所述代理缓存模块120还用于与所述至少一个参数服务器200通信连接。
上述收发模块110与客户端进行通信连接,用于与客户端之间进行数据传输,具体的,可以用于接收客户端发送的查询请求,以及向客户端发送与查询请求对应的目标数据;另外,也可以主动向客户端发送其他数据,此处不作限定。一个代理服务器100中收发模块110的数量可以为一个也可以为多个,此处不作限定。
上述代理缓存模块120用于存储在至少一个参数服务器200存储的数据中常被用于查询的数据,这样收发模块110能够快速的将从代理缓存模块120中查询到与客户端发送的查询请求对应的目标数据反馈至客户端,而无需代理服务器100再与至少一个参数服务器200进行通信,能够节约查询到目标数据的时间。
其中,代理缓存模块120中存储的数据可以是流动的,即不同时间下存储的数据可以是不同的。例如:在时间段1时,事件A为热点事件,与事件A相关的数据A被查询的频率非常高,则代理缓存模块120在时间段1内将数据A保存在本地;在时间段2时,事件A不再是热点事件了,数据A被查询的频率降低,事件B成了热点事件,与事件B相关的数据B被查询的频率非常高,则代理缓存模块120在时间段2内删除数据A并将数据B保存在本地。
上述至少一个参数服务器200共同存储着分布式服务器的数据,由于分部服务器的参数量巨大,从而将总的参数拆分后分别保存于至少一个参数服务器200中。至少一个参数服务器200的存储量远大于代理缓存模块120的存储量,因此至少一个参数服务器200中存储有很多代理缓存模块120中没有保存的数据。
在代理缓存模块120存储的本地数据中不存在与客户端发送的查询请求对应的目标数据,则代理服务器100会将查询请求发送至至少一个参数服务器200,由存储有目标数据的目标参数服务器返回目标数据至代理缓存模块120,再由收发模块110反馈至客户端。
本发明实施例中,通过在代理服务器中增加代理缓存模块,并在代理缓存模块中存储常被查询的数据,这样在后续收到客户端发送的查询请求后,可以首先在代理缓存模块中查询,若在所述代理缓存模块存储的本地数据中包括所述查询请求对应的目标数据,则直接将目标数据反馈至客户端,而无需进行代理服务器与参数服务器之间的通信,减少分布式服务器对常用数据的查询时长,提高分布式服务器的响应速度。
本发明实施例提供一种数据查询方法,如图2所示,应用于如上所述的代理服务器,所述方法包括:
步骤201:利用所述收发模块接收客户端发送的查询请求;
步骤202:在所述代理缓存模块存储的本地数据中查询与所述查询请求对应的目标数据;
步骤203:若所述本地数据包括所述目标数据,则利用所述收发模块将所述目标数据反馈至所述客户端。
上述收发模块和代理缓存模块已经在图1所示的实施例中进行了详细的说明,此处不做赘述。
相关技术中,代理服务器在处理每一个查询请求时均需要与参数服务器进行通信后,才能够得到查询请求对应的目标数据,这种方式不可避免的会造成代理服务器查询目标数据的时间较长的问题,且还会增加代理服务器与参数服务器之间的通信负荷。
本发明实施例中,由于代理缓存模块中存储有常被查询的数据,这样能够大量减少代理服务器与参数服务器之间的通信次数,从而能够降低代理服务器与参数服务器之间的通信负荷,提高分布式服务器运行的可靠性。
本发明实施例中,通过在代理服务器中增加代理缓存模块,并在代理缓存模块中存储常被查询的数据,这样在后续收到客户端发送的查询请求后,可以首先在代理缓存模块中查询,若在所述代理缓存模块存储的本地数据中包括所述查询请求对应的目标数据,则直接将目标数据反馈至客户端,而无需进行代理服务器与参数服务器之间的通信,减少分布式服务器对常用数据的查询时长,提高分布式服务器的响应速度。
本发明实施例还提供另一种数据查询方法,如图3所示,所述方法包括:
步骤301:利用所述收发模块接收客户端发送的查询请求;
步骤302:在所述代理缓存模块存储的本地数据中查询与所述查询请求对应的目标数据;
步骤303:若所述本地数据包括所述目标数据,则利用所述收发模块将所述目标数据反馈至所述客户端;
步骤304:若所述本地数据中不存在所述目标数据,则通过所述代理缓存模块向所述至少一个参数服务器转发所述查询请求;
步骤305:通过所述代理缓存模块接收目标参数服务器反馈的所述目标数据,并利用所述收发模块将所述目标数据反馈至所述客户端,所述目标参数服务器为所述至少一个参数服务器中存储有所述目标数据的参数服务器。
本实施例中,在代理缓存模块存储有与客户端发送的查询请求对应的目标数据时与图2中的技术方案相同,此处不再赘述。
在代理缓存模块未存储有与客户端发送的查询请求对应的目标数据时,通过代理缓存模块向至少一个参数服务器转发该查询请求,来查询至少一个参数服务器中是否存储有目标数据,其中,存储有目标数据的目标参数服务器会将目标数据发送给代理服务器,通过代理缓存模块接收到目标数据后,利用收发模块向客户端发送目标数据。
在一可选的实施方式中,所述代理缓存模块包括第一缓存单元和第二缓存单元;所述步骤304可以包括:
若读取缓存单元存储的本地数据中不存在所述目标数据,则通过所述代理缓存模块向所述至少一个参数服务器转发所述查询请求,所述读取缓存单元为所述第一缓存单元和所述第二缓存单元中的一者;
步骤305可以包括:
通过所述代理缓存模块接收目标参数服务器反馈的所述目标数据,并利用所述收发模块将所述目标数据反馈至所述客户端的步骤,包括:
通过所述代理缓存模块接收目标参数服务器反馈的与所述查询请求对应的目标数据;
将所述目标数据保存至写入缓存单元,所述写入缓存单元为所述第一缓存单元和所述第二缓存单元中的另一者;
利用所述收发模块将所述目标数据反馈至所述客户端。
本实施例中,如图4所示,代理缓存模块120可以包括整合单元121、第一缓存单元122、第二缓存单元123和收发单元124。其中,第一缓存单元122和第二缓存单元123用于存储常被查询的数据。
其中,第一缓存单元122和第二缓存单元123存储的数据内容大致相同,代理服务器每次查询与查询请求对应的目标数据只在第一缓存单元122和第二缓存单元123中的一者(即读取缓存单元)中进行读取以查询目标数据,在另一者(即写入缓存单元)中进行写入新的数据以更新存储的数据。
以第一缓存单元作为读取缓存单元,第二缓存单元作为写入缓存单元为例进行说明:利用整合单元121接收收发模块发送的查询请求后,在第一缓存单元中查询与查询请求对应的目标数据,若第一缓存单元中包括目标数据,则将目标数据通过整合单元121返回给收发模块,利用收发模块反馈至客户端,完成目标数据的反馈过程;若第一缓存单元中不存在目标数据,则利用收发单元124向至少一个参数服务器转发查询请求,并利用收发单元124接收目标参数服务器返回的目标数据,将收发单元124接收到的目标数据通过整合单元121返回给收发模块,再利用收发模块反馈至客户端,完成目标数据的反馈过程,另外,收发单元124还将接收到的目标数据发送给第二缓存单元123,使第二缓存单元123写入该目标数据以更新存储的数据,即使第二缓存单元123存储目标数据。
在缓存单元只有一个的情况下,如果需要对缓存单元进行存储更新需要锁定缓存单元,这样在锁定的时间内无法在缓存单元中查询数据,会影响缓存单元的查询性能。本实施方式中,通过设立两个缓存单元,一个作为读取缓存单元时,另一个用于写入更新缓存单元,这样能够在写入新数据的同时不影响数据的读取查询,确保了数据查询的可靠性。
进一步地,所述方法还包括:
将所述读取缓存单元从所述第一缓存单元切换为所述第二缓存单元,且将所述写入缓存单元从所述第二缓存单元切换为所述第一缓存单元。
即将之前进行了存储更新的缓存单元作为新的读取缓存单元,而将之前的读取缓存单元进行存储更新,这样后续能够在读取缓存单元中查询到之前新存储的数据,而不再需要与参数服务器进行通信了,提高了新数据的查询速度。
其中,读取缓存单元和写入缓存单元是同时进行切换的,切换的条件可以是写入缓存单元进行了预设次数的写入更新,预设次数可以是100次、50次等等;切换的条件也可以是距离上一次切换达到了预设时长,即周期性的进行读取缓存单元和写入缓存单元的切换,此处不作限定。
这样,通过将读取缓存单元在第一缓存单元和第二缓存单元之间进行切换,能够使得切换后的读取缓存单元具有更新的数据,提高数据更新的即时性和对查询趋势的灵敏性。
在另一可选的实施方式中,步骤302,可以包括:
对所述收发模块接收到的N个查询请求进行打包得到请求包,所述请求包中的M个查询请求互不相同,其中,所述N为大于或等于1的整数,所述M为小于或等于所述N的正整数;
在所述代理缓存模块存储的本地数据中查询与所述M个查询请求分别对应的M个目标数据。
本实施方式中,可以是每隔预设时间段将该时间段内全部的查询请求进行打包,预设时间段的时长可以为1ms,也可以是2ms,此处不作限定;也可以是每收到预设数量的查询请求后将预设数量的查询请求进行打包,预设数量可以为10、也可以为8、还可以为15,此处不作限定。
本实施方式中,在打包过程中会对查询请求进行去重操作,即将打包的N个查询请求中重复的至少一条查询请求只保留一条,其余的进行删除,从而使得原本的N条查询请求变为M条互不相同的查询请求。
后续仅需要对M条查询请求在代理缓存模块中进行查询即可,从而能够避免对同一数据的重复查询,降低代理缓存模块中的查询次数。当得到M个查询请求分别对应的M个目标数据后,可以将同一数据分别反馈至发送同一查询请求的至少一个客户端,这样在减少代理缓存模块中的查询次数的情况下依然能够确保每个客户端均能够得到相应的目标数据。
需要说明的是,对所述收发模块接收到的N个查询请求进行打包得到请求包,所述请求包中的M个查询请求互不相同,其中,所述N为大于或等于1的整数,所述M为小于或等于所述N的正整数;在所述代理缓存模块存储的本地数据中查询与所述M个查询请求分别对应的M个目标数据。同样适用于图1所示的实施例,且能够得到相同的有益效果。
在另一可选的实施方式中,所述方法还包括:
按查询频率调整所述代理缓存模块中各数据的存储位置,其中,第一数据的存储位置在查询顺序上位于第二数据的查询位置之前,所述第一数据的查询频率高于所述第二数据的查询频率。
本实施方式中,可以在周期性的调整代理缓存模块中各数据的存储位置,例如:每1个小时调整一次代理缓存模块中各数据的存储位置;也可以是用户自行设定调整代理缓存模块中各数据的存储位置的时间点;还可以是用户手动发起对代理缓存模块中各数据的存储位置的调整,此处不作限定。
如图5所示,通过将查询频率越靠前的数据的存储位置设置在查询顺序越靠前的位置,能够缩短使查询高查询频繁的数据所花费的时间,提高分布式服务器对高查询频繁的数据的查询速度。
如图6所示,本发明实施例还提供一种数据查询装置600,包括:
接收模块610,用于利用所述收发模块接收客户端发送的查询请求;
查询模块620,用于在所述代理缓存模块存储的本地数据中查询与所述查询请求对应的目标数据;
反馈模块630,用于若所述本地数据包括所述目标数据,则利用所述收发模块将所述目标数据反馈至所述客户端。
可选的,数据查询装置600还包括:
转发模块,用于若所述本地数据中不存在所述目标数据,则通过所述代理缓存模块向所述至少一个参数服务器转发所述查询请求;
反馈模块630,还用于通过所述代理缓存模块接收目标参数服务器反馈的所述目标数据,并利用所述收发模块将所述目标数据反馈至所述客户端,所述目标参数服务器为所述至少一个参数服务器中存储有所述目标数据的参数服务器。
可选的,所述代理缓存模块包括第一缓存单元和第二缓存单元;
所述转发模块,用于若读取缓存单元存储的本地数据中不存在所述目标数据,则通过所述代理缓存模块向所述至少一个参数服务器转发所述查询请求,所述读取缓存单元为所述第一缓存单元和所述第二缓存单元中的一者;
所述反馈模块630,包括:
接收单元,用于通过所述代理缓存模块接收目标参数服务器反馈的与所述查询请求对应的目标数据;
写入单元,用于将所述目标数据保存至写入缓存单元,所述写入缓存单元为所述第一缓存单元和所述第二缓存单元中的另一者;
反馈单元,用于利用所述收发模块将所述目标数据反馈至所述客户端。
可选的,数据查询装置600还包括:
切换模块,用于将所述读取缓存单元从所述第一缓存单元切换为所述第二缓存单元,且将所述写入缓存单元从所述第二缓存单元切换为所述第一缓存单元。
可选的,查询模块620包括:
打包单元,用于对所述收发模块接收到的N个查询请求进行打包得到请求包,所述请求包中的M个查询请求互不相同,其中,所述N为大于或等于1的整数,所述M为小于或等于所述N的正整数;
查询单元,用于在所述代理缓存模块存储的本地数据中查询与所述M个查询请求分别对应的M个目标数据。
可选的,数据查询装置600还包括:
调整模块,用于按查询频率调整所述代理缓存模块中各数据的存储位置,其中,第一数据的存储位置在查询顺序上位于第二数据的查询位置之前,所述第一数据的查询频率高于所述第二数据的查询频率。
发明实施例的数据查询装置600能够实现图1至图5的方法实施例中数据查询方法实现的各个过程,为避免重复,这里不再赘述。
本发明实施例的数据查询装置600,能够减少分布式服务器对常用数据的查询时长,提高分布式服务器的响应速度。
本发明实施例还提供了一种电子设备,如图7所示,包括处理器701、通信接口702、存储器703和通信总线704,其中,处理器701,通信接口702,存储器703通过通信总线704完成相互间的通信,
存储器703,用于存放计算机程序;
处理器701,用于执行存储器703上所存放的程序时,实现如下步骤:
利用所述收发模块接收客户端发送的查询请求;
在所述代理缓存模块存储的本地数据中查询与所述查询请求对应的目标数据;
若所述本地数据包括所述目标数据,则利用所述收发模块将所述目标数据反馈至所述客户端。
可选的,在所述代理缓存模块存储的本地数据中查询与所述查询请求对应的目标数据的步骤之后,还包括:
若所述本地数据中不存在所述目标数据,则通过所述代理缓存模块向所述至少一个参数服务器转发所述查询请求;
通过所述代理缓存模块接收目标参数服务器反馈的所述目标数据,并利用所述收发模块将所述目标数据反馈至所述客户端,所述目标参数服务器为所述至少一个参数服务器中存储有所述目标数据的参数服务器。
可选的,所述代理缓存模块包括第一缓存单元和第二缓存单元;所述若所述本地数据中不存在所述目标数据,则通过所述代理缓存模块向所述至少一个参数服务器转发所述查询请求的步骤,包括:
若读取缓存单元存储的本地数据中不存在所述目标数据,则通过所述代理缓存模块向所述至少一个参数服务器转发所述查询请求,所述读取缓存单元为所述第一缓存单元和所述第二缓存单元中的一者;
通过所述代理缓存模块接收目标参数服务器反馈的所述目标数据,并利用所述收发模块将所述目标数据反馈至所述客户端的步骤,包括:
通过所述代理缓存模块接收目标参数服务器反馈的与所述查询请求对应的目标数据;
将所述目标数据保存至写入缓存单元,所述写入缓存单元为所述第一缓存单元和所述第二缓存单元中的另一者;
利用所述收发模块将所述目标数据反馈至所述客户端。
可选的,所述方法还包括:
将所述读取缓存单元从所述第一缓存单元切换为所述第二缓存单元,且将所述写入缓存单元从所述第二缓存单元切换为所述第一缓存单元。
可选的,所述在所述代理缓存模块存储的本地数据中查询与所述查询请求对应的目标数据的步骤,包括:
对所述收发模块接收到的N个查询请求进行打包得到请求包,所述请求包中的M个查询请求互不相同,其中,所述N为大于或等于1的整数,所述M为小于或等于所述N的正整数;
在所述代理缓存模块存储的本地数据中查询与所述M个查询请求分别对应的M个目标数据。
可选的,所述方法还包括:
按查询频率调整所述代理缓存模块中各数据的存储位置,其中,第一数据的存储位置在查询顺序上位于第二数据的查询位置之前,所述第一数据的查询频率高于所述第二数据的查询频率。
上述终端提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述终端与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的内容推荐方法。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的内容推荐方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种代理服务器,应用于分布式服务器,所述分布式服务器还包括至少一个参数服务器,其特征在于,所述代理服务器包括收发模块和代理缓存模块,所述代理缓存模块与所述收发模块电连接,且所述代理缓存模块还用于与所述至少一个参数服务器通信连接。
2.一种数据查询方法,其特征在于,应用于如权利要求1所述的代理服务器,所述方法包括:
利用所述收发模块接收客户端发送的查询请求;
在所述代理缓存模块存储的本地数据中查询与所述查询请求对应的目标数据;
若所述本地数据包括所述目标数据,则利用所述收发模块将所述目标数据反馈至所述客户端。
3.根据权利要求2所述的方法,其特征在于,在所述代理缓存模块存储的本地数据中查询与所述查询请求对应的目标数据的步骤之后,还包括:
若所述本地数据中不存在所述目标数据,则通过所述代理缓存模块向所述至少一个参数服务器转发所述查询请求;
通过所述代理缓存模块接收目标参数服务器反馈的所述目标数据,并利用所述收发模块将所述目标数据反馈至所述客户端,所述目标参数服务器为所述至少一个参数服务器中存储有所述目标数据的参数服务器。
4.根据权利要求3所述的方法,其特征在于,所述代理缓存模块包括第一缓存单元和第二缓存单元;所述若所述本地数据中不存在所述目标数据,则通过所述代理缓存模块向所述至少一个参数服务器转发所述查询请求的步骤,包括:
若读取缓存单元存储的本地数据中不存在所述目标数据,则通过所述代理缓存模块向所述至少一个参数服务器转发所述查询请求,所述读取缓存单元为所述第一缓存单元和所述第二缓存单元中的一者;
通过所述代理缓存模块接收目标参数服务器反馈的所述目标数据,并利用所述收发模块将所述目标数据反馈至所述客户端的步骤,包括:
通过所述代理缓存模块接收目标参数服务器反馈的与所述查询请求对应的目标数据;
将所述目标数据保存至写入缓存单元,所述写入缓存单元为所述第一缓存单元和所述第二缓存单元中的另一者;
利用所述收发模块将所述目标数据反馈至所述客户端。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
将所述读取缓存单元从所述第一缓存单元切换为所述第二缓存单元,且将所述写入缓存单元从所述第二缓存单元切换为所述第一缓存单元。
6.根据权利要求2所述的方法,其特征在于,所述在所述代理缓存模块存储的本地数据中查询与所述查询请求对应的目标数据的步骤,包括:
对所述收发模块接收到的N个查询请求进行打包得到请求包,所述请求包中的M个查询请求互不相同,其中,所述N为大于或等于1的整数,所述M为小于或等于所述N的正整数;
在所述代理缓存模块存储的本地数据中查询与所述M个查询请求分别对应的M个目标数据。
7.根据权利要求2所述的方法,其特征在于,所述方法还包括:
按查询频率调整所述代理缓存模块中各数据的存储位置,其中,第一数据的存储位置在查询顺序上位于第二数据的查询位置之前,所述第一数据的查询频率高于所述第二数据的查询频率。
8.一种数据查询装置,应用于如权利要求1所述的代理服务器,其特征在于,包括:
接收模块,用于利用所述收发模块接收客户端发送的查询请求;
查询模块,用于在所述代理缓存模块存储的本地数据中查询与所述查询请求对应的目标数据;
反馈模块,用于若所述本地数据包括所述目标数据,则利用所述收发模块将所述目标数据反馈至所述客户端。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求2-7中任一所述的方法步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求2-7中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911335637.5A CN110955688A (zh) | 2019-12-23 | 2019-12-23 | 代理服务器、数据查询方法及装置、电子设备和可存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911335637.5A CN110955688A (zh) | 2019-12-23 | 2019-12-23 | 代理服务器、数据查询方法及装置、电子设备和可存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110955688A true CN110955688A (zh) | 2020-04-03 |
Family
ID=69983574
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911335637.5A Pending CN110955688A (zh) | 2019-12-23 | 2019-12-23 | 代理服务器、数据查询方法及装置、电子设备和可存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110955688A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111581172A (zh) * | 2020-05-09 | 2020-08-25 | 深圳市卡数科技有限公司 | 运行日志的查询方法、系统、服务器及存储介质 |
CN112102010A (zh) * | 2020-09-25 | 2020-12-18 | 北京深演智能科技股份有限公司 | 数据推送的方法、装置和系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080091812A1 (en) * | 2006-10-12 | 2008-04-17 | Etai Lev-Ran | Automatic proxy registration and discovery in a multi-proxy communication system |
CN102117309A (zh) * | 2010-01-06 | 2011-07-06 | 卓望数码技术(深圳)有限公司 | 一种数据缓存系统和数据查询方法 |
US20160147666A1 (en) * | 2013-07-31 | 2016-05-26 | Huawei Technologies Co., Ltd. | Multilevel Cache-Based Data Read/Write Method and Apparatus, and Computer System |
CN108920092A (zh) * | 2018-05-07 | 2018-11-30 | 北京奇艺世纪科技有限公司 | 内存数据的数据操作方法、装置及电子设备 |
CN109165078A (zh) * | 2018-07-12 | 2019-01-08 | 厦门中控智慧信息技术有限公司 | 一种虚拟分布式服务器及其访问方法 |
CN110311975A (zh) * | 2019-06-28 | 2019-10-08 | 北京奇艺世纪科技有限公司 | 一种数据请求处理方法及装置 |
-
2019
- 2019-12-23 CN CN201911335637.5A patent/CN110955688A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080091812A1 (en) * | 2006-10-12 | 2008-04-17 | Etai Lev-Ran | Automatic proxy registration and discovery in a multi-proxy communication system |
CN102117309A (zh) * | 2010-01-06 | 2011-07-06 | 卓望数码技术(深圳)有限公司 | 一种数据缓存系统和数据查询方法 |
US20160147666A1 (en) * | 2013-07-31 | 2016-05-26 | Huawei Technologies Co., Ltd. | Multilevel Cache-Based Data Read/Write Method and Apparatus, and Computer System |
CN108920092A (zh) * | 2018-05-07 | 2018-11-30 | 北京奇艺世纪科技有限公司 | 内存数据的数据操作方法、装置及电子设备 |
CN109165078A (zh) * | 2018-07-12 | 2019-01-08 | 厦门中控智慧信息技术有限公司 | 一种虚拟分布式服务器及其访问方法 |
CN110311975A (zh) * | 2019-06-28 | 2019-10-08 | 北京奇艺世纪科技有限公司 | 一种数据请求处理方法及装置 |
Non-Patent Citations (1)
Title |
---|
何林波等, 《西安:西安电子科技大学出版社》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111581172A (zh) * | 2020-05-09 | 2020-08-25 | 深圳市卡数科技有限公司 | 运行日志的查询方法、系统、服务器及存储介质 |
CN111581172B (zh) * | 2020-05-09 | 2023-11-07 | 深圳市卡数科技有限公司 | 运行日志的查询方法、系统、服务器及存储介质 |
CN112102010A (zh) * | 2020-09-25 | 2020-12-18 | 北京深演智能科技股份有限公司 | 数据推送的方法、装置和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10326853B2 (en) | Method and apparatus for reducing network resource transmission size using delta compression | |
US9282141B2 (en) | Method and system for loading file in webgame | |
CN109542361B (zh) | 一种分布式存储系统文件读取方法、系统及相关装置 | |
CN111970315A (zh) | 推送消息的方法、装置及系统 | |
CN111200657B (zh) | 一种管理资源状态信息的方法和资源下载系统 | |
CN107153644B (zh) | 一种数据同步方法及装置 | |
CN109462631B (zh) | 数据处理方法、装置、存储介质及电子装置 | |
CN110247985B (zh) | 一种资源下载方法、装置、电子设备及介质 | |
CN112513830A (zh) | 内容分发网络中的回源方法及相关装置 | |
US20160191652A1 (en) | Data storage method and apparatus | |
CN112559927A (zh) | 一种网页加载方法及装置 | |
CN110955688A (zh) | 代理服务器、数据查询方法及装置、电子设备和可存储介质 | |
JP2022550401A (ja) | データのアップロード方法、システム、装置及び電子機器 | |
CN111597259B (zh) | 数据存储系统、方法、装置、电子设备及存储介质 | |
CN114676135A (zh) | 数据存储方法、可读介质和电子设备 | |
CN115080272A (zh) | 一种业务数据处理方法、电子设备及存储介质 | |
CN110347955B (zh) | 一种资源检测方法及装置 | |
CN110825309B (zh) | 数据读取方法、装置及系统、分布式系统 | |
CN110955460A (zh) | 一种服务进程启动方法、装置、电子设备和存储介质 | |
CN110941595A (zh) | 一种文件系统访问方法及装置 | |
CN112865927A (zh) | 消息送达验证方法、装置、计算机设备和存储介质 | |
CN107103001B (zh) | 基于浏览器获取目标前端资源文件的方法、装置和系统 | |
CN110581883B (zh) | 内容分发方法、内容发布装置、内容请求装置及路由节点 | |
CN111400327B (zh) | 一种数据同步方法、装置、电子设备及存储介质 | |
CN115865862B (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: 20200403 |
|
RJ01 | Rejection of invention patent application after publication |