基于控制时间窗服务访问频度实施服务保护的方法

文档序号:6639433阅读:495来源:国知局
基于控制时间窗服务访问频度实施服务保护的方法
【专利摘要】本发明提供了一种基于控制时间窗服务访问频度实施服务保护的方法,该方法包括配置服务访问频度并写入内存的步骤,ESB在内存中建立服务访问时间窗记录的步骤,ESB读取服务访问频度配置及服务访问时间窗记录,对服务访问进行频度控制,在服务访问频度达到服务配置时,服务访问将被拒绝的步骤。本发明基于控制时间窗服务访问频度实施服务保护的方法的优点是:由于设置了服务访问时间窗记录,控制了服务消费者单位时间内对服务的访问次数,避免了服务消费者对服务的访问过快,从而造成服务提供者出现异常的情况,有效地保护了服务提供者,降低了系统运行风险,提高了系统运行效率。
【专利说明】基于控制时间窗服务访问频度实施服务保护的方法

【技术领域】
[0001] 本发明涉及控制方法,特别涉及一种基于控制时间窗服务访问频度实施服务保护 的方法。

【背景技术】
[0002] 现有的企业服务总线或应用集成平台中,没有对服务在单位时间内的访问次数加 以控制,服务消费者可以自行决定单位时间内对服务的访问次数。
[0003] 由于服务被访问的频度完全由服务消费者决定,很可能造成服务消费者对服务的 访问过快,从而超出服务提供者的最大服务能力,造成服务响应缓慢甚至宕机等情况。当有 恶意程序对服务进行大并发压测或者在客户端程序升级时有并发测试导致对服务的频繁 访问,大多数情况下由于服务端的自我保护能力较差,会造成程序内线程生成过多,每个线 程的处理时间过长,此时CPU使用率会飙升,内存使用率加大,由于软硬件资源限制,容易 出现内存溢出,线程死锁等问题,如果垃圾回收不及时,则会导致服务所在进程挂死。


【发明内容】

[0004] 本发明的目的是克服传统技术的缺陷,提供一种基于控制时间窗服务访问频度实 施服务保护的方法,以控制服务消费者单位时间内对服务的访问次数,避免服务消费者对 服务的访问过快造成服务提供出现异常,有效保护服务提供者,降低系统运行风险,提高系 统运行效率。
[0005] 为达上述目的,本发明提供的基于控制时间窗服务访问频度实施服务保护的方 法,该方法包括如下步骤:
[0006] 步骤1,配置服务访问频度并写入内存;
[0007] 步骤2,ESB在内存中建立服务访问时间窗记录;
[0008] 步骤3, ESB读取服务访问频度配置及服务访问时间窗记录,对服务访问进行频度 控制,在服务访问频度达到服务配置时,服务访问将被拒绝。
[0009] 本发明基于控制时间窗服务访问频度实施服务保护的方法,其中所述步骤1中, 在服务注册中心配置指定服务的访问频度至少包括对XX服务在XX秒内最多可以访问XX 次。
[0010] 本发明基于控制时间窗服务访问频度实施服务保护的方法,其中所述步骤2中, 包括ESB在内存以服务和时间窗两个维度建立服务访问和时间窗纪录二维表,ESB每完成 一次服务的路由转发,属于该服务和当前时间窗中的服务访问次数就自动增加1次。
[0011] 本发明基于控制时间窗服务访问频度实施服务保护的方法,其中所述步骤2中, 频度控制包括ESB在接收到某项服务访问请求并准备转发前,根据服务访问和时间窗纪录 二维表读取该项服务配置,同时根据服务访问时间窗记录二维表计算得到最近时间段内该 项服务总访问次数,如果已经达到服务配置次数,本次服务访问将被拒绝。
[0012] 本发明基于控制时间窗服务访问频度实施服务保护的方法,其中所述步骤2中, 设定时间窗的长度为1秒。
[0013] 本发明基于控制时间窗服务访问频度实施服务保护的方法的优点是:由于设置了 服务访问时间窗记录,控制了服务消费者单位时间内对服务的访问次数,避免了服务消费 者对服务的访问过快,从而造成服务提供者出现异常的情况,有效地保护了服务提供者,降 低了系统运行风险,提高了系统运行效率。

【专利附图】

【附图说明】
[0014] 图1是本发明基于控制时间窗服务访问频度实施服务保护的方法的流程图。
[0015] 下面结合附图详细说明本发明基于控制时间窗服务访问频度实施服务保护的方 法的实施例。

【具体实施方式】
[0016] 参考图1,本发明的通过基于控制时间窗服务访问频度实施服务保护的方法包括 如下步骤:
[0017] 步骤1,配置服务访问频度并写入内存。具体实现方法如下:
[0018] 在服务注册中心配置指定服务的访问频度,例如对XX服务在XX秒内最多可以访 问XX次等。完成配置后,服务注册中心会将这些配置信息实时同步到ESB内存中。
[0019] 步骤2, ESB在内存中建立服务访问时间窗记录。具体实现方法如下:
[0020] ESB在内存以服务和时间窗两个维度,建立服务访问和时间窗纪录二维表,时间窗 的长度根据控制的需要设定,一般以1秒为宜。ESB每完成一次服务的路由转发,属于该服 务和当前时间窗中的服务访问次数就自动增加1次。
[0021] 下表为服务访问时间窗记录二维表的示例,T为某个时间基点,纵向为服务名称, 横向为时间窗。T+1秒表示从时间基点T开始的第1秒内,T+N就表示从时间基点T开始的 第N秒内,纵向和横向交叉的单元格内即为该服务在该时间窗内的服务访问次数,例如服 务A在T+1这1秒内被访问了 23次,具体内容见下表:
[0022]

【权利要求】
1. 一种基于控制时间窗服务访问频度实施服务保护的方法,其特征在于:该方法包括 如下步骤: 步骤1,配置服务访问频度并写入内存; 步骤2, ESB在内存中建立服务访问时间窗记录; 步骤3, ESB读取服务访问频度配置及服务访问时间窗记录,对服务访问进行频度控 巧||,在服务访问频度达到服务配置时,服务访问将被拒绝。
2. 根据权利要求1所述的控制方法,其特征在于;其中所述步骤1中,在服务注册中也 配置指定服务的访问频度至少包括对XX服务在XX砂内最多可W访问的XX次。
3. 根据权利要求1或2所述的控制方法,其特征在于;其中所述步骤2中,包括ESB在 内存W服务和时间窗两个维度建立服务访问和时间窗纪录二维表,ESB每完成一次服务的 路由转发,属于该服务和当前时间窗中的服务访问次数就自动增加1次。
4. 根据权利要求3所述的控制方法,其特征在于;其中所述步骤2中,频度控制包括 ESB在接收到某项服务访问请求并准备转发前,根据服务访问和时间窗纪录二维表读取该 项服务配置,同时根据服务访问时间窗记录二维表计算得到最近时间段内该项服务总访问 次数,如果已经达到服务配置次数,本次服务访问将被拒绝。
5. 根据权利要求3所述的控制方法,其特征在于;其中所述步骤2中,设定时间窗的长 度为1砂。
【文档编号】G06F17/30GK104462476SQ201410795758
【公开日】2015年3月25日 申请日期:2014年12月19日 优先权日:2014年12月19日
【发明者】王震, 李明轩, 徐况, 李宝玉 申请人:科大国创软件股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1