CN114143377A - 资源请求的配置方法、服务端、客户端、设备和存储介质 - Google Patents

资源请求的配置方法、服务端、客户端、设备和存储介质 Download PDF

Info

Publication number
CN114143377A
CN114143377A CN202111432687.2A CN202111432687A CN114143377A CN 114143377 A CN114143377 A CN 114143377A CN 202111432687 A CN202111432687 A CN 202111432687A CN 114143377 A CN114143377 A CN 114143377A
Authority
CN
China
Prior art keywords
request
information
client
resource
server
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.)
Granted
Application number
CN202111432687.2A
Other languages
English (en)
Other versions
CN114143377B (zh
Inventor
王晗
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Douku Software Technology Co Ltd
Original Assignee
Hangzhou Douku Software Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou Douku Software Technology Co Ltd filed Critical Hangzhou Douku Software Technology Co Ltd
Priority to CN202111432687.2A priority Critical patent/CN114143377B/zh
Publication of CN114143377A publication Critical patent/CN114143377A/zh
Application granted granted Critical
Publication of CN114143377B publication Critical patent/CN114143377B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请实施例公开了一种资源请求的配置方法、服务端、客户端和存储介质。该方法包括:通过业务服务器接收资源请求;资源请求中携带有第一请求策略信息;第一请求策略信息用于表征客户端发起资源请求的策略;通过为业务服务器配置的服务端软件开发工具包SDK将第一请求策略信息和第二请求策略信息进行对比,得到对比结果;第二请求策略信息用于表征服务端为客户端配置的发起资源请求的策略;在对比结果表征第一请求策略信息和第二请求策略信息不同的情况下,通过服务端SDK将第二请求策略信息携带在资源响应信息中,发送给客户端;资源响应信息中包括客户端请求的资源。

Description

资源请求的配置方法、服务端、客户端、设备和存储介质
技术领域
本申请涉及计算机技术领域,尤其涉及一种资源请求的配置方法、服务端、客户端、设备和存储介质。
背景技术
目前,客户端通常需要周期性地访问服务端,从服务端获取最新升级资源,对本地程序进行升级。然而,各个客户端周期性访问服务端的时间分布通常没有规律,如此,可能存在某些时刻访问服务端的客户端数量极为庞大,使服务端的每秒查询数(Queries PerSecond,QPS)达到峰值,导致服务端负载大,增加了服务端成本;而某些时刻访问服务端的客户端数量极少;导致资源使用效率低。
发明内容
本申请实施例提供一种资源请求的配置方法、服务端、客户端、设备和存储介质,提高了资源使用效率。
本申请的技术方案是这样实现的:
本申请实施例提供了一种资源请求的配置方法,包括:
通过业务服务器接收资源请求;所述资源请求中携带有第一请求策略信息;所述第一请求策略信息用于表征客户端发起资源请求的策略;通过为所述业务服务器配置的服务端软件开发工具包SDK将所述第一请求策略信息和第二请求策略信息进行对比,得到对比结果;所述第二请求策略信息用于表征服务端为所述客户端配置的发起资源请求的策略;在所述对比结果表征所述第一请求策略信息和所述第二请求策略信息不同的情况下,通过所述服务端SDK将所述第二请求策略信息携带在资源响应信息中,发送给所述客户端;所述资源响应信息中包括所述客户端请求的资源。
本申请实施例提供了一种资源请求的配置方法,包括:
向服务端发送资源请求;所述资源请求中携带有第一请求策略信息;所述第一请求策略信息用于表征客户端发起资源请求的策略;接收来自服务端的资源响应信息并解析所述资源响应信息,得到资源解析结果;若所述资源解析结果中包含有第二请求策略信息,则通过客户端软件开发工具包SDK,利用所述第二请求策略信息更新所述第一请求策略信息,得到更新后的第一请求策略信息。
本申请实施例提供了一种服务端,包括:
业务服务模块,用于通过业务服务器接收资源请求;所述资源请求中携带有第一请求策略信息;所述第一请求策略信息用于表征客户端发起资源请求的策略;
对比模块,用于通过为所述业务服务器配置的服务端软件开发工具包SDK将所述第一请求策略信息和第二请求策略信息进行对比,得到对比结果;所述第二请求策略信息用于表征服务端为所述客户端配置的发起资源请求的策略;
第一发送模块,用于在所述对比结果表征所述第一请求策略信息和所述第二请求策略信息不同的情况下,通过服务端SDK将所述第二请求策略信息携带在资源响应信息中,发送给所述客户端;所述资源响应信息中包括所述客户端请求的资源。
本申请实施例提供了一种客户端,包括:
第二发送模块,用于向服务端发送资源请求;所述资源请求中携带有第一请求策略信息;所述第一请求策略信息用于表征客户端发起资源请求的策略;
第一接收模块,用于接收来自服务端的资源响应信息并解析所述资源响应信息,得到资源解析结果;
更新模块,用于若所述资源解析结果中包含有第二请求策略,则通过客户端软件工具开发包SDK利用所述第二请求策略更新所述第一请求策略,得到更新后的第一请求策略。
本申请实施例提供了一种资源请求的配置设备,包括:
存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现上述服务端侧的资源请求的配置方法;或者,实现上述客户端侧的资源请求的配置方法。
本申请实施例提供了一种存储介质,其上存储有可执行指令,用于被处理器执行时,实现上述服务端侧的资源请求的配置方法;或者,实现上述客户端侧的资源请求的配置方法。
本申请实施例所提供的一种资源请求的配置方法、服务端、客户端、设备和存储介质,通过业务服务器接收资源请求;资源请求中携带有第一请求策略信息;第一请求策略信息用于表征客户端发起资源请求的策略;通过为业务服务器配置的服务端软件开发工具包SDK将第一请求策略信息和第二请求策略信息进行对比,得到对比结果;第二请求策略信息用于表征服务端为客户端配置的发起资源请求的策略;在对比结果表征第一请求策略信息和第二请求策略信息不同的情况下,将第二请求策略信息携带在资源响应信息中,发送给客户端;资源响应信息中包括客户端请求的资源;也就是说,由于资源请求中携带有第一请求策略信息,如此,服务端可以通过对比第一请求策略信息和第二请求策略信息,确定客户端的请求策略需要更新的情况下,将第二请求策略信息发送给客户端,从而实现服务端对客户端的请求策略的动态配置,通过动态配置功能,服务端可以为各客户端配置不同的请求时间,从而降低服务端的QPS,提高服务器的使用效率,降低服务器的成本。
附图说明
图1为本申请实施例提供的一种服务端的QPS示意图;
图2为本申请实施例提供的一种可选的资源请求的配置系统的架构示意图;
图3为本申请实施例提供的一种可选的资源请求的配置方法的流程示意图;
图4为本申请实施例提供的一种可选的客户端周期性发起资源请求的时间示意图;
图5为本申请实施例提供的一种可选的服务端的组成结构示意图;
图6为本申请实施例提供的一种可选的资源请求的配置方法的流程示意图;
图7为本申请实施例提供的一种可选的资源请求的配置方法的流程示意图;
图8为本申请实施例提供的一种可选的资源请求的配置方法的流程示意图;
图9为本申请实施例提供的一种客户端依次发起资源请求的效果示意图;
图10为本申请实施例提供的一种可选的资源请求的配置方法的流程示意图;
图11为本申请实施例提供的一种可选的资源请求的配置方法的流程示意图;
图12为本申请实施例提供的一种可选的资源请求的配置方法的流程示意图;
图13为本申请实施例提供的一种可选的资源请求的配置方法的流程示意图;
图14为本申请实施例提供的一种可选的服务端与客户端的交互过程示意图;
图15为本申请实施例提供的一种可选的服务端的结构示意图;
图16为本申请实施例提供的一种可选的客户端的结构示意图;
图17为本申请实施例提供的一种可选的服务端的结构示意图;
图18为本申请实施例提供的一种可选的客户端的结构示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
为便于理解本方案,在对本申请实施例进行说明之前,对本申请实施例中的应用背景进行说明。
在传统的资源升级服务中,客户端需要周期性的访问服务端,在服务端存在最新的升级资源时,从服务端获取最新的升级资源来进行本地程序升级。由于客户端请求访问服务端的时间由客户端自己控制,例如,客户端通常会在开机后对服务端进行周期性访问,如此,晨起开机的客户端将导致服务端的QPS的周期性峰值突刺,如图1所示。从图1中可以看出,在QPS峰值突刺期间,请求访问的客户端数量庞大,导致服务端负载激增,可能影响服务端的可用性,QPS峰值突刺将对服务端负载提出了更高的要求;并且,对于下载类的业务来说,也导致了高的带宽需求,从而增加了成本。
并且,某些时刻存在QPS峰值突刺,某些时刻也会存在QPS低谷,即客户端在这些时刻的访问数量极少,从而导致服务端负载不均衡,使用效率不高。
本申请实施例提供一种资源请求的配置方法、服务端、客户端、设备和存储介质,能够提高服务端的使用效率,降低成本。
图2示出了本申请一个示例性实施例提供的请求的配置系统的架构示意图,该系统100可以包括:服务端101、客户端102(示例性的展示除了102-1和102-2)和网络103。客户端101与服务端102通过网络103连接。网络103可以是广域网或者局域网,又或者是二者的组合。
服务端101包括至少一个业务服务器(示例性的展示了业务服务器101-1、业务服务器101-2和业务服务器101-3)。其中,服务端101用于接收客户端102的资源请求,从资源请求中解析出客户端的第一请求策略信息;通过服务端SDK将第一请求策略信息与服务端101配置给客户端102的第二请求策略信息进行对比,在对比结果表征第一请求策略信息和第二请求策略信息不同的情况下,将第二请求策略信息携带在资源响应信息中发送给客户端102,客户端102利用第二请求策略信息更新第一请求策略信息,得到更新后的第一请求策略信息,如此,实现了服务端101对客户端102资源请求的动态配置,从而使客户端102能够分散的向服务端101进行资源请求,提高资源使用率,降低成本。
本申请实施例提供的客户端可以实施为笔记本电脑,平板电脑,台式计算机,机顶盒,移动设备(例如,移动电话,便携式音乐播放器,个人数字助理,专用消息设备,便携式游戏设备,智能手表)等各种类型的用户终端。
本申请实施例提供的服务端可以实施为独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(ContentDelivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器等,对此,本申请实施例不作限制。
将结合本申请实施例提供的服务端的示例性应用和实时,说明本申请实施例提供的资源请求的配置方法。
参见图3,图3是本申请实施例提供的资源请求的配置方法的流程示意图,应用于服务端,将结合图2示出的步骤进行说明。
S101、通过业务服务器接收资源请求;资源请求中携带有第一请求策略信息;第一请求策略信息用于表征客户端发起资源请求的策略。
在本申请实施例中,服务端包括业务服务器,通过业务服务器,可以从客户端接收到资源请求,资源请求用于请求客户端所需的资源。其中,资源请求中携带有客户端的第一请求策略信息,第一请求策略信息用于表征客户端发起资源请求的策略。
在本申请实施例中,客户端发起资源请求的策略即客户端发起资源请求的时机的配置。例如,每天晚上十点发起资源请求,开机后每间隔8小时发起一次资源请求。这里,客户端发起资源请求的时机通常是周期性的。
在本申请实施例中,第一请求策略信息可以包括请求周期和时间偏移量。其中,时间偏移量是在周期内的时间偏移。不同的客户端的请求周期可以相同,而时间偏移量不同;或者,请求周期不同,而时间偏移量相同;还可以请求周期不同,时间偏移量也不同。对此,可以根据业务的差异进行配置,也可以根据服务段的QPS进行配置,对于请求周期和时间偏移量的配置,本申请实施例不作限制。
示例性的,客户端1请求系统资源,系统资源的请求周期为24小时,客户端1的时间偏移量为30分钟;客户端2请求系统资源,系统资源请求周期为24小时,时间偏移量为1小时;可以看出,如此,客户端1和客户端2每天都要进行一次系统资源的请求,但时间相差30分钟。
在本申请的一些实施例中,请求周期和偏移量的单位可以相同,例如,可以均为毫秒、秒和分钟等等,对此,本申请实施例不作限制。
示例性的,参考图4,请求周期和偏移量的单位均为秒;客户端的请求周期的周期长度为5s,时间偏移量为3s,则客户端每隔5s发起资源请求一次,且在每个周期内的第3s发起资源请求。
在本申请的一些实施例中,第一请求策略信息还包括请求策略的版本号。
示例性的,客户端1请求系统资源,其请求策略的版本号为xtzy.01;客户端2请求应用程序1的资源,其请求策略的版本号为app1.01;其中,xtzy.01版本的请求策略中,请求周期为24小时,时间偏移量为1小时;app1.01版本的请求策略中,请求周期为12小时,时间偏移量为1小时。
在本申请的一些实施例中,对于相同的业务,例如系统资源,不同的客户端,其请求策略的请求周期相同,时间偏移量不同;如此,对于相同的业务,不同的客户端之间只要配置不同的时间偏移量,就可以使不同的客户端在不同的时刻请求系统资源升级。
S102、通过为业务服务器配置的服务端软件开发工具包SDK将第一请求策略信息和第二请求策略信息进行对比,得到对比结果;第二请求策略信息用于表征服务端为客户端配置的发起资源请求的策略。
在本申请实施例中,每个业务服务器均配置有对应的服务端软件开发工具包(Software Development Kit,SDK),如此,业务服务器在接收到客户端对应的业务的资源请求后,可以通过该业务服务器的服务端SDK获取资源请求中的第一请求策略信息,将接收到的第一请求策略信息与服务端为该客户端配置的第二请求策略信息进行对比,得到对比结果。
在本申请实施例中,服务端包括配置中心,用于对服务端进行配置服务。服务端通过配置中心可以获取到为客户端配置的第二请求策略信息;也就是说,服务端可以通过配置中心调整第二请求策略信息,从而实现对客户端资源请求的动态更新。
在本申请实施例中,服务端可以通过配置中心接收到配置人员对第二请求策略信息的调整,也可以通过配置中心在满足配置更新条件的情况下,对第二请求策略信息进行调整,对此,本申请实施例不作限制。
在本申请实施例中,配置更新条件可以为QPS高于QPS阈值的情况下,也可以为预设时间到达的情况下,对此,可以根据需要设置,本申请实施例不作限制。
示例性的,参考图5,图5示出了一种可选的服务端的组成结构示意图,图5中的服务端可以通过云平台实现,云平台包括业务服务层、基础服务层和基础设施层。其中,业务服务层包括业务服务器,业务服务器配置有服务端SDK;基础设施层包括容器,这里可以为胖容器;基础服务层包括配置服务和监控服务;其中,配置服务通过配置中心实现,配置中心用于配置业务服务器以及请求策略;监控服务由监控中心实现,监控中心用于可以用于监控服务端的QPS,在服务端监控到QPS高于QPS阈值的情况下,服务端可以确定此时资源请求数量激增,如此,服务端可以为客户端重新配置资源请求的策略,将客户端的资源请求时间分散开来。服务端通过云平台实现,可以在云平台的效果上进一步加成请求策略的动态配置,提高服务端的使用率。
在本申请实施例中,第一请求策略信息中包括第一请求周期和第一时间偏移量,第二请求策略信息中包括第二请求周期和第二时间偏移量;如此,服务端SDK可以将第一请求周期和第二请求周期进行对比,得到请求周期对比结果,以及,将第一时间偏移量与第二时间偏移量进行对比,得到偏移量对比结果。将偏移量对比结果和请求周期对比结果作为对比结果。
在本申请的一些实施例中,第一请求策略信息中还包括第一版本号,第二请求策略信息中还包括第二版本号;如此,服务端SDK可以将第一版本号和第二版本号进行对比,得到版本号对比结果,将版本号对比结果作为对比结果。
S103、在对比结果表征第一请求策略信息和第二请求策略信息不同的情况下,通过服务端SDK将第二请求策略信息携带在资源响应信息中,发送给客户端;资源响应信息中包括客户端请求的资源。
在本申请实施例中,服务端在得到第一请求策略信息和第二请求策略信息的对比结果后,可以根据对比结果向客户端返回资源响应信息。
在本申请的一些实施例中,服务端可以在请求周期对比结果表征第一请求周期和第二请求周期不同的情况下,确定第一请求策略信息和第二请求策略信息不同。
在本申请的一些实施例中,服务端可以在偏移量对比结果表征第一时间偏移量和第二时间偏移量不同的情况下,确定第一请求策略信息和第二请求策略信息不同。
在本申请的一些实施例中,服务端可以在版本号对比结果表征第一版本号和第二版本号不同的情况下,确定第一请求策略信息和第二请求策略信息不同。
在本申请实施例中,服务端在确定第一请求策略信息和第二请求策略信息不同的情况下,可以将第二请求策略信息携带在资源响应信息中,发送给客户端。资源响应信息为用于响应资源请求,而向客户端返回的请求的资源的信息。
在本申请实施例中,服务端通过业务服务器接收到资源请求后,可以根据资源请求查询到客户端请求的资源,并将客户端请求的资源携带在资源响应信息中发送给客户端。
示例性的,如图6所示,本申请实施例提供一种可选的请求策略的配置方法的流程示意图,应用于服务端,该方法可以包括:
S01、接收来自客户端的资源请求;资源请求中携带有第一请求策略信息;
S02、判断第一请求策略信息与第二请求策略信息是否相同,若相同则执行S03;否则,执行S04。
S03、将资源响应信息反馈给客户端;资源响应信息中包含客户端请求的资源。
S04、将第二请求策略信息携带在资源响应信息中,反馈给客户端。
可以理解的是,由于服务端接收到的资源请求中携带有客户端的请求策略信息,如此,服务端可以获取客户端的请求策略信息和服务端给客户端配置的请求策略信息,在两者不一致的情况下,将服务端给客户端配置的请求策略信息携带在资源响应信息中反馈给客户端,使客户端能够及时更新服务端配置的请求策略信息,实现对客户端请求策略的动态配置,从而提高了服务端的使用效率,降低了成本。
在本申请的一些实施例中,在S102中通过为业务服务器配置的服务端软件开发工具包SDK将第一请求策略信息和第二请求策略信息进行对比,得到对比结果之前,如图7所示,该方法还可以包括:S201-S203。
S201、通过服务端SDK获取请求策略配置文件。
在本申请实施例中,服务端可以通过服务端SDK获取请求配置策略文件。请求配置策略文件中包含请求策略配置信息。
在本申请的一些实施例中,配置中心配置有配置中心SDK,如此,配置中心可以将请求策略配置文件通过配置中心SDK发送给服务端SDK,从而使服务端SDK可以从配置中心获取请求配置策略文件。
在本申请的一些实施例中,配置中心可以将请求策略配置文件发送给业务服务器,如此,服务端SDK可以从业务服务器获取请求配置策略文件。
在本申请的一些实施例中,业务服务器在获取请求配置策略文件后,可以将请求配置策略文件存放在策略存储位置,并且可以向服务端SDK发出请求策略更新提示信息,请求策略更新用于指示服务端SDK从策略存储位置获取请求配置策略文件。
这里,策略存储位置可以是预先设置好的,也可以是业务服务器随机选择的,对此,可以根据需要设置,本申请实施例不作限制。需要说明的是,在策略存储位置是业务服务器随机选择的存储位置的情况下,请求策略更新提示信息中可以携带策略存储位置,以便服务器SDK可以获知策略存储位置,从策略存储位置获取请求配置策略文件。
在本申请的一些实施例中,业务服务器在获取请求配置策略文件后,可以将请求策略配置文件发送给服务端SDK。
在本申请的一些实施例中,请求策略配置文件通常包含在业务服务器的配置文件中,配置中心将配置文件发送给业务服务器,业务服务器可以从配置文件中获取业务服务器的配置信息以及请求策略配置文件,然后,服务端SDK再从业务服务器获取请求策略配置文件。
S202、通过服务端SDK,根据请求策略配置文件,确定请求策略配置信息,并对请求策略配置信息进行缓存。
在本申请实施例中,服务端SDK获取请求策略配置文件后,可以从请求策略配置文件中解析出请求策略配置信息,并将请求策略配置信息在本地缓存,从而便于服务端SDK利用请求策略配置信息。
在本申请的一些实施例中,请求策略配置信息包括请求周期和单位时间偏移量;单位时间偏移量用于表征请求资源的当前客户端和下一个客户端之间的请求时间偏差。请求策略配置文件中可以包括请求策略配置参数,如此,服务端SDK可以根据配置参数和预设配置算法计算出请求周期和单位时间偏移量。这里,预设配置算法可以包括预设周期算法和预设单位时间偏移量算法,预设周期算法用于计算请求周期,预设单位时间偏移量算法用于计算单位时间偏移量。
在本申请的一些实施例中,单位时间偏移量可以是预先设置好的,服务端SDK从请求策略配置文件中获取请求策略配置参数后,可以根据配置参数和预设周期算法计算出请求周期。
示例性的,如公式(1)所示的预设周期算法为:
m=A2+B 公式(1)
其中,m为请求周期,A和B为配置参数。可以看出,在A为1B为2的情况下,计算得到请求周期为3;在A为1B为2的情况下,计算得到请求周期为5;也就是说,通过调整A和B这两个参数,可以得到新的请求周期。
需要说明的是,预设周期算法和预设单位时间偏移量算法可以根据需要设置,对此,本申请实施例不作限制。
在本申请的一些实施例中,请求策略配置文件中包含请求周期和单位时间偏移量,如此,服务端SDK获取请求配置文件后,可以从请求配置文件中获取请求周期和单位时间偏移量。
在本申请的一些实施例中,请求策略配置信息包括请求周期和时间偏移量的配置方式,这里,时间偏移量的配置方式用于表征请求资源的当前客户端的时间偏移量与下一个客户端的时间偏移量的配置规律。
在本申请的一些实施例中,请求策略配置信息中还包括版本号。
在本申请的一些实施例中,请求策略配置文件中包含请求策略的版本号;如此,服务端SDK可以从请求策略配置文件中获取请求策略的版本号。这里,配置中心每发送一次请求策略配置文件,科技将其中包含的请求策略的版本号升高一次。
在本申请的一些实施例中,服务端SDK可以每接收一次请求策略配置文件,可以将请求策略的版本号升高一次,如此,服务端SDK可以根据请求策略配置文件,确定出请求策略的版本号。
S203、通过服务端SDK,根据请求策略配置信息,确定第二请求策略信息。
在本申请实施例中,服务端SDK在获取请求策略配置信息后,可以根据请求策略配置信息确定出为客户端配置的第二请求策略信息。
在本申请实施例中,服务端SDK可以根据请求策略配置信息配置出每个请求资源的客户端的第二请求策略信息。
在本申请的一些实施例中,请求策略配置信息包括请求周期m和时间偏移量n的配置方式;其中,n和m均为正数,且n小于或等于m;S203中通过服务端SDK,根据请求策略配置信息,确定第二请求策略信息的实现,如图8所示,可以包括:S301-S302。
S301、通过服务端SDK,根据m、上一个客户端的n,以及n的配置方式,确定当前客户端的n。
在本申请实施例中,服务端SDK需要为一个请求周期内的每个客户端分配不一样的n。因此,服务端SDK需要根据请求周期、上一个客户端的时间偏移量来配置当前客户端的n,从而使当前客户端的请求时间和上一个客户端的请求时间可以不同,以实现打散客户端请求时间的目的。
在本申请实施例中,服务端配置完当前客户端的n后,就可以根据当前客户端的n和请求周期,确定出下一个客户端的n,并将下一个客户端的n缓存起来,待下一个客户端的资源请求到来后,配置给下一个客户端。
在本申请的一些实施例中,S301中通过服务端SDK,根据m、上一个客户端的n,以及n的配置方式,确定当前客户端的n的实现,可以包括:S401-S403。
S401、通过服务端SDK,将上一个客户端的n加上单位偏移量p,得到新的时间偏移量;其中,p为正数,且p小于m。
在本申请实施例中,通过服务端SDK,服务端可以将上一个客户端的n加上单位偏移量p,得到新的时间偏移量n+p,服务端SDK得到新的时间偏移量后,需要判断新的时间偏移量与请求周期m的大小关系,根据大小关系确定当前客户端的n。
S402、在新的时间偏移量小于或等于m的情况下,将新的时间偏移量N作为当前客户端的n。
S403、在新的时间偏移量大于m的情况下,将p作为当前客户端的n。
在本申请实施例中,如果新的时间偏移量小于或等于m,表示当前客户端和上一个客户端可以在相同周期内间隔单位偏移量p,因此,服务端SDK可以将新的时间偏移量n+p确定为当前客户端的n;否则,表示,当前客户端和上一个客户端在相同周期内无法继续间隔单位偏移量p,因此,服务端可以将单位偏移量p作为当前客户端的n。
示例性的,如图9所示,m等于5,p为1,设备1-设备10依次发起资源请求,则设备1-设备5的n分别为1-5;设备6-10的n分别为1-5。
在本申请的一些实施例中,S301中通过服务端SDK,根据m、上一个客户端的n,以及n的配置方式,确定当前客户端的n的实现,可以包括:通过服务端SDK、上一个客户端的时间偏移量ni-1和预设偏移量算法,确定当前客户端的待确定时间偏移量ni′,其中,i为正整数;预设偏移量算法用于表征上一个客户端的时间偏移量与当前客户端的待确定时间偏移量ni’之间的关系;在当前客户端的待确定时间偏移量小于或等于m的情况下,将ni′确定当前客户端的时间偏移量ni;在当前客户端的时间偏移量大于m的情况下,将n1作为当前客户端的时间偏移量ni
示例性的,m为5,预设偏移量算法为公式(2):
Figure BDA0003380789010000111
其中,初始值n0为0,根据公式(2),可以确定n1-n4分别为1、1.5、2.125和3.258,由于n5′为6.3,大于请求周期m,可以确定n5=n1,即n5=1。
S302、将m和当前客户端的n确定为第二请求策略信息。
在本申请实施例中,通过服务端SDK在确定出当前客户端的n后,可以将m和当前客户端的n确定为第二请求策略信息。
可以理解的是,通过服务端SDK,根据上一个客户端的时间偏移量,请求周期,可以确定出当前客户端的时间偏移量,从而在一个周期内将依次请求的客户端的请求时间打散,降低了服务端的QPS,提高了服务端的使用效率,减少了服务端的成本。
在本申请的一些实施例中,请求策略配置信息包括请求周期m和单位时间偏移量p;S203中通过服务端SDK,根据请求策略配置信息,确定第二请求策略信息的实现可以包括:将单位时间偏移量乘以随机正整数i,得到当前客户端的时间偏移量n,其中,n和m均为正数,且n小于或者等于m。
需要说明的是,为了满足n小于或者等于m,可以得到正整数i的取值范围,则当前客户端的时间偏移量,可以为单位时间偏移量p在取值范围内随机乘以一个i,得到当前客户端的时间偏移量。示例性的,m为5,p为1,则i在正整数1-5之间取值,也就是说,所有客户端的时间偏移量在1-5之间取值。在多个周期上,所有客户端的请求时间将被随机打散。
在本申请实施例中,请求周期的长度越短,客户端就可以越快速的获取到更新的资源,从而更快的实现更新;不同客户端的请求时间之间的间隔越短,一个周期内可接收的客户端请求越多,如此,服务端的QPS越低。
在本申请的一些实施例中,S201中通过服务端SDK获取请求策略配置文件之前的方法,如图10所示,还可以包括:S501-S503。
S501、在业务服务器启动的情况下,将业务应用信息上报给配置中心;业务应用信息用于配置中心识别客户端的业务。
在本申请实施例中,业务服务器一旦启动,将会向配置中心上报应用信息,以便配置中心通过应用信息可以识别出业务服务器的业务;如此,配置中心可以将该业务对应的配置信息通过配置文件返回给业务服务器,使业务服务器可以根据配置文件进行配置。
在本申请实施例中,应用信息可以包括:应用标识和应用环境。其中,用于不同业务的业务服务器的应用标识不同,配置中心可以根据应用标识来识别业务服务器的业务;应用环境代表业务服务器对应的使用区域,例如:国内环境、欧洲环境以及美国环境等等;配置中心需要根据应用信息对不同的业务服务器进行对应的配置。
S502、通过配置中心,根据业务应用信息确定服务端SDK的初始化文件;并将初始化文件发送给业务服务器。
在本申请实施例中,配置中心在接收到业务服务器上报的应用信息后,可以确定业务服务器启动,如此,配置中心可以根据该业务服务器的应用信息,确定出该业务服务器的服务端SDK的初始化文件,并将该初始化文件发送给业务服务器。
在本申请的一些实施例中,初始化文件可以在携带在配置文件中。如此,业务服务器可以通过配置中心发送的配置文件获取到服务端SDK的初始化文件。
S503、通过服务端SDK,从业务服务器获取初始化文件,并根据初始化文件对服务端SDK进行初始化。
在本申请实施例中,业务服务器获取到初始化文件后,服务端SDK就可以从业务服务器获取到初始化文件,从初始化文件中解析出初始化程序,运行该初始化程序可以实现对服务端SDK的初始化。
在本申请实施例中,服务端SDK初始化完成后,就可以实现根据请求策略配置文件确定当前客户端的第二请求策略信息。
在本申请的一些实施例中,业务服务器获取到初始化文件后,可以将初始化文件保存在预设初始化文件存储位置,并向服务端SDK发送初始化通知消息,初始化通知消息用于指示服务端SDK从预设初始化文件存储位置获取初始化文件。
在本申请的一些实施例中,初始化文件中包含有初始请求策略配置信息,如此,通过服务端SDK,可以为各个客户端配置出初始第二请求策略。
可以理解的是,业务服务器启动后,该业务服务器的服务端SDK可以进行初始化,从而启动服务端SDK为当前客户端配置第二请求策略信息的功能。
在本申请的一些实施例中,第二请求策略信息还包括版本号,S201中通过服务端SDK获取请求策略配置文件之后的方法还可以包括:升级所述第二请求策略的版本号。
在本申请实施例中,第二请求策略的版本号即为请求策略的版本号,服务端SDK可以在获取请求策略配置文件后,对第二请求策略的版本号进行升级,从而将第二请求策略的版本号与客户端所使用的第一请求策略的版本号区分开来,使服务端SDK能够识别出哪些客户端的请求策略需要更新。
在本申请的一些实施例中,第二请求策略的版本号携带在请求策略配置文件中,服务端SDK可以直接从请求策略配置文件中获取。
在本申请的一些实施例中,S103中在对比结果表征第一请求策略信息和第二请求策略信息不同的情况下,将第二请求策略信息携带在资源响应信息中,发送给客户端的实现,可以包括:S601-S603。
S601、在对比结果表征第一请求策略和第二请求策略不同的情况下,通过服务端SDK从业务服务器中获取资源响应信息。
在本申请实施例中,服务端SDK在确定第一请求策略和第二请求策略不同的情况下,需要先从业务服务器获取资源响应信息。
在本申请实施例中,业务服务器在查询到客户端请求的资源后,可以生成资源响应信息,将资源携带在资源响应信息中,然后,将资源响应信息发送给服务端SDK。
S602、通过服务端SDK将第二请求策略信息封装到资源响应信息的报头中,将资源响应信息发送至业务服务器。
在本申请实施例中,服务端SDK获取资源响应信息后,可以将第二请求策略信息封装在资源响应信息的报头中,再将资源响应信息发送给业务服务器。
S603、通过业务服务器将资源响应信息发送给客户端。
在本申请实施例中,业务服务器生成资源响应信息后,将资源响应信息发送给服务端SDK,再接收到服务端SDK返回的封装有第二请求策略信息的资源响应信息后,才将资源响应信息发送给客户端,以便客户端通过资源响应信息获取新的请求策略。
可以理解的是,业务服务器通过将资源响应信息发送给服务端SDK,从而获得携带有第二请求策略信息的资源响应信息,并通过资源响应信息使客户端及时更新请求策略。如此,对当前业务服务器的功能影响极小,后续升级动态配置请求策略服务时,可以通过服务端SDK实现大部分功能。
本申请实施例提供了一种服务端侧的请求策略的配置方法的流程示意图,如图11所示,服务端包括业务服务器、配置中心和服务端SDK,该方法可以包括:
S11、业务服务器启动。
S12、业务服务器向配置中心上报应用信息。
S13、配置中心根据应用信息确定业务服务器的配置文件。
S14、配置中心将服务端SDK的初始化文件携带在配置文件中,将配置配置文件发送给业务服务器。
S15、业务服务器根据配置文件配置服务器,并将初始化文件保存在预设存储位置。
S16、业务服务器向服务端SDK发送初始化通知消息;初始化通知消息用于指示服务端SDK从预设初始化文件存储位置获取初始化文件。
S17、服务端SDK根据初始化通知消息的指示,从预设初始化文件存储位置获取初始化文件。
S18、服务端SDK根据初始化文件进行初始化。
S19、配置中心向业务服务器发送请求策略配置文件。
S20、业务服务器将请求策略配置文件发送给服务端SDK。
S21、服务端SDK将请求策略配置文件在本地进行缓存。
在本申请实施例中,服务端通过为业务服务器配置服务端SDK,在业务服务器启动后,通过配置中心配置业务服务器,并初始化服务端SDK,从而使服务端SDK可以通过业务服务器接收来自配置中心的请求策略配置文件,并将请求策略配置文件在本地缓存,如此,服务端SDK可以快速根据请求策略配置文件为客户端配置请求策略。
可以理解的是,通过在服务端为业务服务器配置服务端SDK,使得服务端可以通过服务端SDK完成对客户端请求策略的动态配置,且对原有的业务服务器的功能影响极小,使服务端能够快速升级,实现动态配置请求策略的功能。
参见图12,图12是本申请实施例提供的资源请求的配置方法的流程示意图,应用于客户端,将结合图12示出的步骤进行说明。
S701、向服务端发送资源请求;资源请求中携带有第一请求策略信息;第一请求策略信息用于表征客户端发起资源请求的策略。
在本申请实施例中,客户端在发起资源请求的时间到达时,向服务端发起资源请求;资源请求用于请求客户端需要的资源。
这里,客户端可以将资源请求发送至服务端中对应的业务服务器,该业务服务器为客户端请求的资源业务对应的服务器。
在本申请实施例中,资源请求中携带有第一请求策略信息。其中,第一请求策略信息用于表征客户端发起资源请求的策略;根据第一请求策略信息可以确定客户端发起资源请求的时间。
在本申请实施例中,资源请求中通常携带有请求参数,请求参数可以包括:客户端的设备参数和请求的资源信息等;对此,可以根据需要设置,本申请实施例不作限制。
示例性的,以手机请求系统资源升级为例,客户端的请求参数可以为手机参数,例如手机型号;请求的资源信息可以为手机所使用的系统类型,例如安卓或iOS。
在本申请的一些实施例中,第一请求策略信息包含请求周期和时间偏移量。
在本申请的一些实施例中,第一请求策略信息还包含版本号。
对于第一请求策略信息的说明,可以参考S101中的描述,在此不作赘述。
S702、接收来自服务端的资源响应信息并解析资源响应信息,得到资源解析结果。
在本申请实施例中,客户端向服务端发送资源请求后,服务端可以根据资源请求返回资源响应信息。客户端解析资源响应信息后,可以得到资源解析结果,资源解析结果中包含客户端请求的资源。
在本申请实施例中,资源响应信息中还有可能携带第二请求策略信息。客户端解析资源响应信息后,得到的资源解析结果可以包括第二请求策略信息。这里,第二请求策略信息与第一请求策略信息不同。
S703、若资源解析结果中包含有第二请求策略信息,则通过客户端软件开发工具包SDK,利用第二请求策略信息更新第一请求策略信息,得到更新后的第一请求策略信息。
在本申请实施例中,客户端解析资源响应信息得到资源结果后,如果资源解析结果中包含第二请求策略信息,则将第二请求策略信息发送给客户端SDK;客户端SDK中存放有客户端当前采用的第一请求策略信息,在接收到第二请求策略信息后,可以将第二请求策略信息替换第一请求策略信息,以实现客户端请求策略的更新;也就是说,第二请求策略信息成为更新后的第一请求策略信息
可以理解的是,客户端通过将第一请求策略信息携带在资源请求响应中,在服务端为客户端配置的请求策略发生变化,即第二请求策略信息与第一请求策略信息不同的情况下,可以通过资源响应信息获取第二请求策略信息以更新第一请求策略信息,从而实现客户端请求策略的动态更新,使不同的客户端可以分散开请求时间,从而降低服务端的QPS,提高服务端的使用率,降低成本。
在本申请的一些实施例中,S701中向服务端发送资源请求的实现,可以包括S801-S803。
S801、根据第一请求策略信息,生成待发送资源请求。
在本申请实施例中,在第一请求策略信息表征的发起资源请求的时间到达的情况下,客户端将生成待发送资源请求,待发送资源请求中包含请求参数。
在本申请的一些实施例中,客户端可以根据第一请求策略信息设置定时装置,定时装置用于周期性提示客户端到达发起资源请求的时刻。
S802、通过客户端SDK,将第一请求策略信息携带在待发送资源请求中,得到资源请求。
S803、向服务端发送资源请求。
在本申请实施例中,客户端生成待发送资源请求后,可以将待发送资源请求发送至客户端SDK;客户端SDK获取到资源请求后,可以将第一请求策略信息携带在待发送资源请求中,得到资源请求。再将携带有第一请求策略信息的资源请求发送给服务端。
在本申请的一些实施例中,客户端SDK可以将第一请求策略信息写入待发送资源请求的报头中。
示例性的,第一请求策略信息包括版本号,客户端SDK可以将版本号写入待发送资源请求的报头中,得到资源请求。如此,客户端将服务端发送资源请求后,服务端可以通过第一请求策略信息的版本号与服务端配置的第二请求策略信息的版本号进行对比,从而确定客户端的请求策略是否需要升级。
可以理解的是,通过客户端SDK可以实现在资源请求中携带第一请求策略信息,如此,在客户端实现动态调整请求策略的功能升级时,通过客户端SDK可以减少对原有客户端功能的调整,从而便捷快速的实现客户端的动态调整请求策略功能。
在本申请的一些实施例中,S703中通过客户端软件开发工具包SDK,利用第二请求策略信息更新第一请求策略信息,得到更新后的第一请求策略信息之后,该方法还可以包括:通过客户端SDK,根据更新后的第一请求策略信息,确定定时参数,并将定时参数发送给客户端;定时参数用于客户端设置定时装置;定时装置用于在资源请求时间到达时提示客户端向服务端发送资源请求。
在本申请实施例中,客户端SDK一旦更新了第一请求策略信息,可以根据更新后的第一请求策略信息确定定时参数,将定时参数发送给客户端,由客户端根据定时参数设置定时装置,定时装置可以周期性的提示客户端发起资源请求的时间到达。
示例性的,更新后的第一请求策略信息中请求周期为24小时,时间偏移量为10小时,则定时参数可以包括:请求时间10点,请求时间间隔24小时;如此,按照定时参数设置好的定时装置将在每天的10点提示客户端可以发起资源请求。
可以理解的是,通过设置定时装置,可以方便的实现更新后的请求策略,如此,客户端只需要在定时装置提示时,发起资源请求。
本申请实施例提供了一种客户端侧的请求策略的配置方法的流程示意图,如图13所示,客户端配置有客户端SDK,该方法可以包括:
S31、客户端生成待发送资源请求;
S32、客户端将待发送资源请求发送给客户端SDK;
S33、客户端SDK将第一请求策略信息写入资源请求的报头中,得到资源请求;
S34、客户端SDK将资源请求发送给客户端;
S35、客户端将资源请求发送给服务端;
S36、服务端响应于资源请求,向客户端发送资源响应信息;
S37、客户端解析资源响应信息,得到第二请求策略信息。
S38、客户端将第二请求策略信息发送给客户端SDK。
S39、客户端SDK利用第二请求策略信息更新第一请求策略信息,得到更新后的第一请求策略信息,并将更新后的第一请求策略信息缓存。
S40、客户端SDK根据更新后的第一请求策略信息确定定时参数。
S41、客户端将定时参数发送给客户端。
S42、客户端根据定时参数设置定时装置;定时装置用于在资源请求时间到达时提示客户端发起资源请求。
在本申请实施例中,客户端通过配置客户端SDK,可以实现将第一策略信息携带在资源请求中,并且在接收到第二请求策略信息后,通过客户端SDK可以利用第二请求策略信息更新第一请求策略信息,并根据更新后的第一请求策略信息确定定时参数,如此,客户端只需在接收到定时参数后,利用定时参数设置定时装置,根据定时装置的提示发起资源请求,就可以实现客户端请求策略的更新。
可以理解的是,通过客户端SDK,使得客户端可以通过客户端SDK实现对客户端请求策略的动态配置,且对原有的客户端的功能影响极小,使客户端能够快速升级实现动态配置请求策略的功能。
在本申请实施例中,客户端与服务端之间的交互是通过客户端和服务端中的业务服务器实现的。在一些实施例中,客户端中可以配置请求策略SDK,即客户端SDK,业务服务器中可以配置请求策略SDK,即服务端SDK;如此,服务端将第二请求策略信息发送给客户端的过程,参见图14,即业务服务器将第二请求策略信息携带在资源响应信息中发送给客户端的过程。
基于本申请实施例的请求策略的配置方法,本申请实施例还提供一种服务端,如图15所示,图15为本申请实施例提供的一种服务端的结构示意图一,该服务端101包括:
业务服务模块5001,用于通过业务服务器接收资源请求;所述资源请求中携带有第一请求策略信息;所述第一请求策略信息用于表征客户端发起资源请求的策略;
对比模块5002,用于通过为所述业务服务器配置的服务端软件开发工具包SDK将所述第一请求策略信息和第二请求策略信息进行对比,得到对比结果;所述第二请求策略信息用于表征服务端为所述客户端配置的发起资源请求的策略;
第一发送模块5003,用于在所述对比结果表征所述第一请求策略信息和所述第二请求策略信息不同的情况下,通过服务端SDK将所述第二请求策略信息携带在资源响应信息中,发送给所述客户端;所述资源响应信息中包括所述客户端请求的资源。
在一些实施例中,所述对比模块5002,还用于通过为所述业务服务器配置的服务端软件开发工具包SDK将所述第一请求策略信息和第二请求策略信息进行对比,得到对比结果之前,通过所述服务端SDK获取请求策略配置文件;通过所述服务端SDK,根据所述请求策略配置文件,确定请求策略配置信息,并对所述请求策略配置信息进行缓存;通过所述服务端SDK,根据所述请求策略配置信息,确定所述第二请求策略信息。
在一些实施例中,所述请求策略配置信息包括请求周期m和时间偏移量n的配置方式;其中,n和m均为正数,且n小于或等于m;所述对比模块5002,还用于通过所述服务端SDK,根据所述m、上一个客户端的n,以及n的配置方式,确定当前客户端的n;将所述m和所述当前客户端的n确定为所述第二请求策略信息。
在一些实施例中,所述对比模块5002,还用于通过所述服务端SDK,将所述上一个客户端的n加上单位偏移量p,得到新的时间偏移量;其中,p为正数,且p小于m;在所述新的时间偏移量小于或等于所述m的情况下,将所述新的时间偏移量N作为所述当前客户端的n;在所述新的时间偏移量大于所述m的情况下,将所述p作为所述当前客户端的n。
在一些实施例中,所述服务端还包括配置中心;在通过服务端SDK获取请求策略配置文件之前,所述业务服务模块5001,还用于在业务服务器启动的情况下,将业务应用信息上报给配置中心;所述业务应用信息用于所述配置中心识别所述业务服务器的业务;所述配置中心,还用于根据所述业务应用信息确定所述服务端SDK的初始化文件;并将所述初始化文件发送给所述业务服务器;所述对比模块5002,还用于通过所述服务端SDK,从所述业务服务器获取所述初始化文件,并根据所述初始化文件对所述服务端SDK进行初始化。
在一些实施例中,所述第二请求策略信息还包括版本号;所述对比模块5002,还用于通过所述服务端SDK获取请求策略配置文件之后,升级所述第二请求策略信息的版本号。
在一些实施例中,所述第一发送模块5003,还用于在所述对比结果表征所述第一请求策略和所述第二请求策略不同的情况下,通过所述服务端SDK从所述业务服务器中获取资源响应信息;通过所述服务端SDK将所述第二请求策略信息封装到所述资源响应信息的报头中,将所述资源响应信息发送至所述业务服务器;通过所述业务服务器将所述资源响应信息发送给所述客户端。
基于本申请实施例的请求策略的配置方法,本申请实施例还提供一种服务端,如图16所示,图16为本申请实施例提供的一种可选的客户端的结构示意图,该客户端102包括:
第二发送模块6001,用于向服务端发送资源请求;所述资源请求中携带有第一请求策略信息;所述第一请求策略信息用于表征客户端发起资源请求的策略;
第一接收模块6002,用于接收来自服务端的资源响应信息并解析所述资源响应信息,得到资源解析结果;
更新模块6003,用于若所述资源解析结果中包含有第二请求策略,则通过客户端软件开发工具包SDK,利用所述第二请求策略更新所述第一请求策略,得到更新后的第一请求策略。
在一些实施例中,所述第二发送模块6001,还用于根据所述第一请求策略信息,生成待发送资源请求;通过所述客户端SDK,将所述第一请求策略信息携带在所述待发送资源请求中,得到所述资源请求;向所述服务端发送所述资源请求。
在一些实施例中,所述更新模块6003,还用于在利用所述第二请求策略信息更新所述第一请求策略,得到更新后的第一请求策略之后,通过所述客户端SDK,根据所述更新后的第一请求策略信息,确定定时参数,并将所述定时参数发送给客户端;所述定时参数用于所述客户端设置定时装置;所述定时装置用于在资源请求时间到达时提示所述客户端向所述服务端发送资源请求。
本申请实施例提供一种资源请求的配置设备,该配置设备包括存储器和处理器;存储器存储有可在处理器上运行的计算机程序,处理器执行程序时,实现上述服务端侧的资源请求的配置方法;或者,实现上述客户端侧的资源请求的配置方法。
图17为本申请实施例提供的一种可选的服务端的结构组成示意图,如图17所示,服务端101包括第一存储器1017、第一处理器1018及存储在第一存储器1017上并可在第一处理器1018上运行的计算机程序;其中,第一处理器用于运行所述计算机程序时,执行如前述实施例中请求的配置方法。
可以理解,服务端101还包括总线系统1019;服务端101中的各个组件通过总线系统1019耦合在一起。可理解,总线系统1019用于实现这些组件之间的连接通信。总线系统1019除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。
图18为本申请实施例提供的一种可选的客户端的结构组成示意图,如图18所示,客户端102包括第二存储器1027、第二处理器1028及存储在第二存储器1027上并可在第二处理器1028上运行的计算机程序;其中,第二处理器用于运行所述计算机程序时,执行如前述实施例中请求策略的配置方法。
可以理解,客户端102还包括总线系统1029;客户端102中的各个组件通过总线系统1029耦合在一起。可理解,总线系统1029用于实现这些组件之间的连接通信。总线系统1029除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。
可以理解,本实施例中的存储器可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read OnlyMemory,ROM)、可编程只读存储器(Programmable Read-Only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性随机存取存储器(Ferromagnetic Random Access Memory,FRAM)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(Compact Disc Read-Only Memory,CD-ROM);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(Random AccessMemory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static Random Access Memory,SRAM)、同步静态随机存取存储器(Synchronous Static Random Access Memory,SSRAM)、动态随机存取存储器(DynamicRandom Access Memory,DRAM)、同步动态随机存取存储器(Synchronous Dynamic RandomAccess Memory,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data RateSynchronous Dynamic Random Access Memory,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced Synchronous Dynamic Random Access Memory,ESDRAM)、同步连接动态随机存取存储器(SyncLink Dynamic Random Access Memory,SLDRAM)、直接内存总线随机存取存储器(Direct Rambus Random Access Memory,DRRAM)。本申请实施例描述的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
上述本申请实施例揭示的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、DSP,或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成前述方法的步骤。
本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,在计算机可读存储介质位于服务端时,该计算机程序被第一处理器执行时实现上述服务端侧的请求策略的配置方法中的步骤。
本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,在计算机可读存储介质位于客户端时,该计算机程序被第二处理器执行时实现上述客户端侧的请求策略的配置方法中的步骤。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个模块或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或模块的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
以上所述,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。

Claims (14)

1.一种资源请求的配置方法,其特征在于,所述方法包括:
通过业务服务器接收资源请求;所述资源请求中携带有第一请求策略信息;所述第一请求策略信息用于表征客户端发起资源请求的策略;
通过为所述业务服务器配置的服务端软件开发工具包SDK将所述第一请求策略信息和第二请求策略信息进行对比,得到对比结果;所述第二请求策略信息用于表征服务端为所述客户端配置的发起资源请求的策略;
在所述对比结果表征所述第一请求策略信息和所述第二请求策略信息不同的情况下,通过所述服务端SDK将所述第二请求策略信息携带在资源响应信息中,发送给所述客户端;所述资源响应信息中包括所述客户端请求的资源。
2.根据权利要求1所述的方法,其特征在于,所述通过为所述业务服务器配置的服务端软件开发工具包SDK将所述第一请求策略信息和第二请求策略信息进行对比,得到对比结果之前,所述方法还包括:
通过所述服务端SDK获取请求策略配置文件;
通过所述服务端SDK,根据所述请求策略配置文件,确定请求策略配置信息,并对所述请求策略配置信息进行缓存;
通过所述服务端SDK,根据所述请求策略配置信息,确定所述第二请求策略信息。
3.根据权利要求2所述的方法,其特征在于,所述请求策略配置信息包括请求周期m和时间偏移量n的配置方式;其中,n和m均为正数,且n小于或等于m;所述通过所述服务端SDK,根据所述请求策略配置信息,确定所述第二请求策略信息,包括:
通过所述服务端SDK,根据所述m、上一个客户端的n,以及n的配置方式,确定当前客户端的n;
将所述m和所述当前客户端的n确定为所述第二请求策略信息。
4.根据权利要求3所述的方法,其特征在于,所述通过所述服务端SDK,根据所述m、上一个客户端的n,以及n的配置方式,确定当前客户端的n,包括:
通过所述服务端SDK,将所述上一个客户端的n加上单位偏移量p,得到新的时间偏移量;其中,p为正数,且p小于m;
在所述新的时间偏移量小于或等于所述m的情况下,将所述新的时间偏移量N作为所述当前客户端的n;
在所述新的时间偏移量大于所述m的情况下,将所述p作为所述当前客户端的n。
5.根据权利要求2所述的方法,其特征在于,所述通过所述服务端SDK获取请求策略配置文件之前,所述方法还包括:
在业务服务器启动的情况下,将业务应用信息上报给配置中心;所述业务应用信息用于所述配置中心识别所述业务服务器的业务;
通过所述配置中心,根据所述业务应用信息确定所述服务端SDK的初始化文件;并将所述初始化文件发送给所述业务服务器;
通过所述服务端SDK,从所述业务服务器获取所述初始化文件,并根据所述初始化文件对所述服务端SDK进行初始化。
6.根据权利要求2所述的方法,其特征在于,所述第二请求策略信息还包括版本号;所述通过所述服务端SDK获取请求策略配置文件之后,所述方法还包括:
升级所述第二请求策略信息的版本号。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述在所述对比结果表征所述第一请求策略和所述第二请求策略不同的情况下,通过所述服务端SDK将所述第二请求策略信息携带在资源响应信息中,发送给所述客户端,包括:
在所述对比结果表征所述第一请求策略和所述第二请求策略不同的情况下,通过所述服务端SDK从所述业务服务器中获取资源响应信息;
通过所述服务端SDK将所述第二请求策略信息封装到所述资源响应信息的报头中,将所述资源响应信息发送至所述业务服务器;
通过所述业务服务器将所述资源响应信息发送给所述客户端。
8.一种资源请求的配置方法,其特征在于,包括:
向服务端发送资源请求;所述资源请求中携带有第一请求策略信息;所述第一请求策略信息用于表征客户端发起资源请求的策略;
接收来自服务端的资源响应信息并解析所述资源响应信息,得到资源解析结果;
若所述资源解析结果中包含有第二请求策略信息,则通过客户端软件开发工具包SDK,利用所述第二请求策略信息更新所述第一请求策略信息,得到更新后的第一请求策略信息。
9.根据权利要求8所述的方法,其特征在于,所述向服务端发送资源请求,包括:
根据所述第一请求策略信息,生成待发送资源请求;
通过所述客户端SDK,将所述第一请求策略信息携带在所述待发送资源请求中,得到所述资源请求;
向所述服务端发送所述资源请求。
10.根据权利要求8所述的方法,其特征在于,所述通过客户端软件开发工具包SDK,利用所述第二请求策略信息更新所述第一请求策略信息,得到更新后的第一请求策略信息之后,所述方法还包括:
通过所述客户端SDK,根据所述更新后的第一请求策略信息,确定定时参数,并将所述定时参数发送给客户端;所述定时参数用于所述客户端设置定时装置;所述定时装置用于在资源请求时间到达时提示所述客户端向所述服务端发送资源请求。
11.一种服务端,其特征在于,包括:
业务服务模块,用于通过业务服务器接收资源请求;所述资源请求中携带有第一请求策略信息;所述第一请求策略信息用于表征客户端发起资源请求的策略;
对比模块,用于通过为所述业务服务器配置的服务端软件开发工具包SDK将所述第一请求策略信息和第二请求策略信息进行对比,得到对比结果;所述第二请求策略信息用于表征服务端为所述客户端配置的发起资源请求的策略;
第一发送模块,用于在所述对比结果表征所述第一请求策略信息和所述第二请求策略信息不同的情况下,通过服务端SDK将所述第二请求策略信息携带在资源响应信息中,发送给所述客户端;所述资源响应信息中包括所述客户端请求的资源。
12.一种客户端,其特征在于,包括:
第二发送模块,用于向服务端发送资源请求;所述资源请求中携带有第一请求策略信息;所述第一请求策略信息用于表征客户端发起资源请求的策略;
第一接收模块,用于接收来自服务端的资源响应信息并解析所述资源响应信息,得到资源解析结果;
更新模块,用于若所述资源解析结果中包含有第二请求策略,则通过客户端软件工具开发包SDK利用所述第二请求策略更新所述第一请求策略,得到更新后的第一请求策略。
13.一种资源请求的配置设备,其特征在于,包括:
存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现权利要求1-7任一项所述方法;或者,实现权利要求8-10任一项所述方法。
14.一种存储介质,其特征在于,其上存储有可执行指令,用于被处理器执行时,实现权利要求1-7任一项所述的方法;或者,实现权利要求8-10任一项所述方法。
CN202111432687.2A 2021-11-29 2021-11-29 资源请求的配置方法、服务端、客户端、设备和存储介质 Active CN114143377B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111432687.2A CN114143377B (zh) 2021-11-29 2021-11-29 资源请求的配置方法、服务端、客户端、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111432687.2A CN114143377B (zh) 2021-11-29 2021-11-29 资源请求的配置方法、服务端、客户端、设备和存储介质

Publications (2)

Publication Number Publication Date
CN114143377A true CN114143377A (zh) 2022-03-04
CN114143377B CN114143377B (zh) 2024-04-02

Family

ID=80389205

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111432687.2A Active CN114143377B (zh) 2021-11-29 2021-11-29 资源请求的配置方法、服务端、客户端、设备和存储介质

Country Status (1)

Country Link
CN (1) CN114143377B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114900478A (zh) * 2022-06-08 2022-08-12 珠海金山数字网络科技有限公司 资源处理系统及方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120131095A1 (en) * 2010-11-22 2012-05-24 Michael Luna Optimization of resource polling intervals to satisfy mobile device requests
WO2016078431A1 (zh) * 2014-11-21 2016-05-26 中兴通讯股份有限公司 策略文件同步管理的方法及策略同步服务器和管理设备
CN112134954A (zh) * 2020-09-22 2020-12-25 京东数字科技控股股份有限公司 服务请求处理方法、装置、电子设备及存储介质
CN112583726A (zh) * 2019-09-27 2021-03-30 华为技术有限公司 一种流量控制的方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120131095A1 (en) * 2010-11-22 2012-05-24 Michael Luna Optimization of resource polling intervals to satisfy mobile device requests
WO2016078431A1 (zh) * 2014-11-21 2016-05-26 中兴通讯股份有限公司 策略文件同步管理的方法及策略同步服务器和管理设备
CN112583726A (zh) * 2019-09-27 2021-03-30 华为技术有限公司 一种流量控制的方法及装置
WO2021057808A1 (zh) * 2019-09-27 2021-04-01 华为技术有限公司 一种流量控制的方法及装置
CN112134954A (zh) * 2020-09-22 2020-12-25 京东数字科技控股股份有限公司 服务请求处理方法、装置、电子设备及存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114900478A (zh) * 2022-06-08 2022-08-12 珠海金山数字网络科技有限公司 资源处理系统及方法
CN114900478B (zh) * 2022-06-08 2024-03-26 珠海金山数字网络科技有限公司 资源处理系统及方法

Also Published As

Publication number Publication date
CN114143377B (zh) 2024-04-02

Similar Documents

Publication Publication Date Title
US11146502B2 (en) Method and apparatus for allocating resource
US10725826B1 (en) Serializing duration-limited task executions in an on demand code execution system
US10445140B1 (en) Serializing duration-limited task executions in an on demand code execution system
CN108369534B (zh) 代码执行请求路由
US8984058B2 (en) Pre-fetching remote resources
WO2019174595A1 (zh) 资源配置方法、装置、终端及存储介质
CN107547746B (zh) 资源配置方法及相关产品
US10771533B2 (en) Adaptive communication control device
US11392497B1 (en) Low latency access to data sets using shared data set portions
US20100235329A1 (en) System and method of embedding second content in first content
WO2019042169A1 (zh) 资源配置方法及相关产品
CN110545246A (zh) 一种基于令牌桶的限流方法和装置
CN107547745B (zh) 资源配置方法及相关产品
CN107450988B (zh) 资源配置方法及相关产品
US11550713B1 (en) Garbage collection in distributed systems using life cycled storage roots
CN109889401B (zh) 流量统计方法、装置、计算机设备和存储介质
CN107807852B (zh) 应用程序性能控制方法、设备及计算机可读存储介质
CN112311876B (zh) 通过负载均衡设备确定当前会话的后端设备的方法与设备
US11593270B1 (en) Fast distributed caching using erasure coded object parts
WO2017095820A1 (en) Methods and devices for acquiring data using virtual machine and host machine
CN111131841A (zh) 直播间接入方法、装置、电子设备及存储介质
CN111124299A (zh) 数据存储管理方法、装置、设备、系统及存储介质
CN113656087A (zh) 小程序启动方法、装置、设备及存储介质
CN114143377B (zh) 资源请求的配置方法、服务端、客户端、设备和存储介质
CN108664274A (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
GR01 Patent grant
GR01 Patent grant