一种服务端灰度降级方法和装置制造方法及图纸

技术编号:18972262 阅读:76 留言:0更新日期:2018-09-19 03:35
本发明专利技术实施例提供了一种服务端灰度降级方法和装置,该方法和装置应用于客户端,具体为当接收到服务器返回的数据时,根据数据中的来源标识判断数据是否来自于缓存,并根据数据中的时间戳判断数据的更新时间;如果数据来自于缓存,则在用户向服务器发送写操作指令时,如果写操作指令执行成功,则在本地缓存所述写操作指令和写操作时间戳;当用户重复读取数据时,如果此数据仍来自于缓存,且数据的更新时间早于写操作时间戳的时间,则用缓存在本地的写操作指令对数据进行复写。从而有效降低了服务器的页面服务层的负载,也就无需为突然增加的负载情况临时或永久部署服务器。这样一来,也就在不增加成本的情况下有效解决了高并发状况下时负载超标问题。

A method and device for server side gray level degradation

The embodiment of the present invention provides a service-side gray-scale degradation method and apparatus, which are applied to the client side, in particular to determine whether the data comes from the cache according to the source identification of the data when the data returned by the server is received, and to determine the update time of the data according to the timestamp of the data; When the user sends a write operation instruction to the server from the cache, if the write operation instruction executes successfully, the write operation instruction and the write operation timestamp are cached locally; when the user reads the data repeatedly, if the data still comes from the cache, and the update time of the data is earlier than the time of the write operation timestamp. The data is then rewritten using the cache's local write operation instructions. This effectively reduces the load on the server's page service layer and eliminates the need to temporarily or permanently deploy the server for sudden increases in load. In this way, the problem of overload under high concurrency is effectively solved without increasing the cost.

【技术实现步骤摘要】
一种服务端灰度降级方法和装置
本专利技术涉及网络
,特别是涉及一种服务端灰度降级方法和装置。
技术介绍
对于网站来说,在某些特定的时间节点、比如节假日、新剧上线日、演唱会直播日、购物节等,由于突发的海量用户访问,导致QPS瞬间暴增,且大部分数据与用户行为有关,在此情况下还无法使用缓存,从而给服务端造成巨大压力。尤其系统中间的Servlet层(页面服务层)不仅需要调后端接口,而且还要组装数据返回给客户端,由此导致服务器的CPU使用率激增,甚至迫近危险阀值。现在的措施是通过增加服务器的数量,以达到均衡负载的效果,包括永久增加或临时增加,但这样做会导致网站的成本激增,对于网站的经营来说是不利的。
技术实现思路
有鉴于此,本专利技术提供了一种服务端灰度降级方法和装置,应用于网站的服务器,用于在不增加成本的情况下解决高并发状况下负荷超标的问题。为了解决上述问题,本专利技术公开了一种服务端灰度降级方法,应用于客户端,所述服务端灰度降级方法包括步骤:当接收到服务器返回的数据时,根据所述数据中的来源标识判断所述数据是否来自于缓存,并根据数据中的时间戳判断数据的更新时间;如果所述数据来自于缓存,则在用户向服务器发送输入写操作指令时,如果所述写操作指令执行成功,则在本地缓存所述写操作指令和写操作时间戳;当用户重复读取所述数据时,如果所述数据仍来自于所述缓存,且所述数据的更新时间早于所述写操作时间戳的时间,则用缓存在本地的写操作指令对记录在本地的所述数据进行复写。可选的,所述在本地记录所述写操作指令和写操作时间戳,包括:将所述写操作指令和所述写操作时间戳进行缓存;或,将所述写操作指令和所述写操作时间戳写入本地预置的文件中。可选的,所述服务端灰度降级方法还包括步骤:当用户请求的数据不是本地缓存的数据时,清空或删减记录在本地的所述写操作指令和所述写操作时间戳。还提供了一种服务端灰度降级方法,应用于服务器,所述服务端灰度降级方法包括步骤:当接收到客户端请求时,对当前的负载进行检测;如果所述负载超过预设负载阈值,则通过数据缓存返回数据;如果所述负载低于所述预设负载阈值,则直接向所述客户端返回数据;其中,返回的数据中附加有标识是否来自于缓存的来源标识。可选的,所述直接向所述客户端返回数据,包括:通过调用第三方接口的方式请求数据并进行组装;将组装好的数据返回所述客户端。另外,还提供了一种服务端灰度降级装置,应用于客户端,所述服务端灰度降级装置包括:数据来源判断模块,用于当接收到服务器返回的数据时,根据所述数据中的来源标识判断所述数据是否来自于缓存,并根据所述数据中的时间戳判断所述数据的更新时间;第一命令处理模块,用于如果所述数据来自于缓存,则在用户向所述服务器发送写操作指令时,则在本地缓存所述写操作指令和写操作时间戳;第二命令处理模块,用于当用户重复读取数据时,如果所述数据仍来自于所述缓存,且所述数据的更新时间早于所述写操作时间戳的时间,则用缓存在本地的所述写操作指令对所述数据进行复写。可选的,所述第一命令处理模块至少包括:命令缓存单元,用于将所述写操作指令和所述写操作时间戳进行缓存;命令记录单元,用于将所述写操作指令和所述写操作时间戳写入本地预置的文件中。可选的,所述服务端灰度降级装置还包括:第三命令处理模块,用于当用户请求的数据不是本地缓存的数据时,清空或删减记录在本地的所述写操作指令和所述写操作时间戳。另外,又提供了一种服务端灰度降级装置,应用于服务器,所述服务端灰度降级装置包括:负载检测模块,用于检测当接收到客户端请求时,对当前的负载进行检测;第一数据返回模块,用于如果所述负载超过预设负载阈值,则通过数据缓存返回数据;第二数据返回模块,用于如果所述负载低于所述预设负载阈值,则直接向所述客户端返回数据;其中,返回的数据中附加有标识是否来自于缓存的来源标识。可选的,所述第二数据返回模块包括:数据获取单元,用于通过调用第三方接口的方式请求数据并进行组装;数据发送单元,用于将组装好的数据返回所述客户端。从上述技术方案可以看出,本专利技术提供了一种服务端灰度降级方法和装置,该方法和装置应用于客户端,具体为当接收到服务器返回的数据时,根据数据中的来源标识判断数据是否来自于缓存,并根据数据中的时间戳判断数据的更新时间;如果数据来自于缓存,则在用户向服务端发送写操作指令时,在本地记录所述写操作指令和所述时间戳;当用户重复读取数据时,如果此数据仍来自于缓存,且数据的更新时间早于记录在缓存中的时间戳的时间,则用缓存在本地的写操作指令对记录在本地的数据进行复写。从而有效降低了服务器的页面服务层的负荷,也就无需为增加的负载情况临时或永久部署服务器。这样一来,也就在不增加成本的情况下有效解决了高并发状况下时负载超标问题。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的一种服务端灰度降级方法的步骤流程图;图2为本专利技术实施例提供的另一种服务端灰度降级方法的步骤流程图;图3为本专利技术实施例提供的一种真读假写机制的操作示意图;图4为本专利技术实施例提供的又一种服务端灰度降级方法的步骤流程图;图5本专利技术实施例提供的一种服务端灰度降级装置的结构框图;图6本专利技术实施例提供的另一种服务端灰度降级装置的结构框图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。实施例一图1为本专利技术实施例提供的一种服务端灰度降级方法的步骤流程图。参照图1所示,本实施例提供的服务端灰度降级方法应用于网站的客户端,客户端是指用户能够通过其向网站的服务器请求数据服务的应用程序,也可以扩展为运行上述应用程序的电子设备。这里灰度降级是指介于黑色与白色之间,进行平滑降级的方案。该服务端灰度降级方法具体包括如下步骤:S101:判断服务器返回的数据是否来源于缓存。该数据是服务器的页面服务层根据用户通过客户端发动的数据请求指令返回的,该数据包括有来源标识和时间戳,该来源标识用于标识该数据究竟是来自于服务器的缓存,还是来自于外部的外部数据。外部数据是指服务器通过调用第三方接口的方式获取原始数据、并对原始数据进行封装后得到的数据。在获取到服务器返回的数据后,可以通过对来源标识的识别判断数据的来源,即是否来自于缓存。如果该数据不是来自于缓存,则通过正常模式进行读写操作;相反则启用真写假读机制,同时,根据数据中的时间戳判断该数据的更新时间。S102:在数据来自于缓存时,缓存写操作指令和写操作时间戳。如果返回的数据来自于页面服务层的缓存,则表明此时服务器的负载较大,为避免进一步加大其负荷,当用户通过客户端向服务器发送写操作指令时,且该写操作指令执行成功,则在本地记录上述写操作指令和写操作时间戳,同时将写操作指令发送到页面服务层,其中写操作时间戳记录有该写操作指令所发生本文档来自技高网...

【技术保护点】
1.一种服务端灰度降级方法,应用于客户端,其特征在于,所述服务端灰度降级方法包括步骤:当接收到服务器返回的数据时,根据所述数据中的来源标识判断所述数据是否来自于缓存,并根据数据中的时间戳判断数据的更新时间;如果所述数据来自于缓存,则在用户向服务器发送写操作指令时,如果所述写操作指令执行成功,则在本地缓存所述写操作指令和写操作时间戳;当用户重复读取所述数据时,如果所述数据仍来自于所述缓存,且所述数据的更新时间早于所述写操作时间戳的时间,则用缓存在本地的写操作指令对记录在本地的所述数据进行复写。

【技术特征摘要】
1.一种服务端灰度降级方法,应用于客户端,其特征在于,所述服务端灰度降级方法包括步骤:当接收到服务器返回的数据时,根据所述数据中的来源标识判断所述数据是否来自于缓存,并根据数据中的时间戳判断数据的更新时间;如果所述数据来自于缓存,则在用户向服务器发送写操作指令时,如果所述写操作指令执行成功,则在本地缓存所述写操作指令和写操作时间戳;当用户重复读取所述数据时,如果所述数据仍来自于所述缓存,且所述数据的更新时间早于所述写操作时间戳的时间,则用缓存在本地的写操作指令对记录在本地的所述数据进行复写。2.如权利要求1所述的服务端灰度降级方法,其特征在于,所述在本地记录所述写操作指令和写操作时间戳,包括:将所述写操作指令和所述写操作时间戳进行缓存;或,将所述写操作指令和所述写操作时间戳写入本地预置的文件中。3.如权利要求1或2所述的服务端灰度降级方法,其特征在于,所述服务端灰度降级方法还包括步骤:当用户请求的数据不是本地缓存的数据时,清空或删减记录在本地的所述写操作指令和所述写操作时间戳。4.一种服务端灰度降级方法,应用于服务器,其特征在于,所述服务端灰度降级方法包括步骤:当接收到客户端请求时,对当前的负载进行检测;如果所述负载超过预设负载阈值,则通过数据缓存返回数据;如果所述负载低于所述预设负载阈值,则直接向所述客户端返回数据;其中,返回的数据中附加有标识是否来自于缓存的来源标识。5.如权利要求4所述的服务端灰度降级方法,其特征在于,所述直接向所述客户端返回数据,包括:通过调用第三方接口的方式请求数据并进行组装;将组装好的数据返回所述客户端。6.一种服务端灰度降级装置,应用于客户端,其特征在于,所述服务端灰度降级装置...

【专利技术属性】
技术研发人员:李龙泉方学阳
申请(专利权)人:北京奇艺世纪科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1