[发明专利]动态服务网关及其中执行的方法有效
申请号: | 201510252766.3 | 申请日: | 2015-05-18 |
公开(公告)号: | CN105049342B | 公开(公告)日: | 2018-07-17 |
发明(设计)人: | 黄平 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
主分类号: | H04L12/66 | 分类号: | H04L12/66;H04L12/741;H04L12/761;H04L12/813 |
代理公司: | 中科专利商标代理有限责任公司 11021 | 代理人: | 唐文静 |
地址: | 100080 北京市海淀区杏石*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 子服务 路线图 动态服务 路由表 网关 客户端请求 注册请求 编排 配置 注册信息存储 接收客户端 客户端模块 策略路由 存储单元 动态扩展 服务网关 注册模块 注册目录 启动时 调用 分发 存储 查找 响应 | ||
本发明提供了一种动态服务网关以及在其中执行的方法。所述动态服务网关包括:客户端模块,配置为:接收客户端请求;协议注册模块,配置为:接收子服务在启动时的注册请求;以及响应于所述注册请求,将所述子服务支持的协议的注册信息存储到路由表;策略路由模块,配置为:在路由表中查找所接收的客户端请求对应的协议;确定所述客户端请求对应的协议的编排路线图;以及,按照所述编排路线图,依次调用所述编排路线图中的每一个协议对应的子服务;以及,存储单元,配置为:存储所述注册目录和路由表。根据本发明实施例,实现了在子服务扩张时服务网关的协议分发能力的动态扩展。
技术领域
本发明一般地涉及计算机网络,更具体地涉及动态服务网关和在其中执行的方法。
背景技术
在互联网迅猛发展的今天,网络流量实现了快速突飞猛进的增长,特别是电商行业的异军突起,成为该发展趋势的领军人物。对应着前段流量的爆发式增长,服务端系统也在承受着巨大考验。为了实现高并发、高可用的系统,大部分公司都会按照业务把整个系统拆分成独立的子系统,然后通过RPC框架按照业务需求调用对应服务。这样的设计可以实现业务更高的聚合,防止扩散影响,但却带来了其它问题,这些子系统怎么被外部接口调用、怎么实现相互调用和协同作业,都需要提供切实可行的方案去解决。
现有技术方案大部分实现的是一种“简单直接”的方式。也即让统一服务网关“记录(或记住)”每个子服务(或子系统)所提供的服务(即“可以做哪些事情”)。然后当外部请求流量到达时,服务网关根据请求类型去调用所需的对应的服务,完成整个请求过程。该流程可以例如如图1所示。在图1中,当外部请求到达服务网关时,服务网关根据调用关系去调用对应的服务。这种调用关系是在系统实现的时候通过“硬编码”的方式完成的,是一种自上而下的调用。
上述“硬编码”调用关系的现有技术系统在子服务有更新时将会出现问题。然而子服务和业务是紧密联系的,随着业务的发展和扩充,子服务的更新升级的频率会很高。现有技术系统应对这种场景需要通过升级服务网关来支持业务迭代。但服务网关是整个系统的流量中心,汇聚了所有的流量请求,它的升级会直接影响(甚至中断)整个系统的运营。而且这种“自上而下”的硬编码调用关系决定了服务网关将和各个子服务产生严重耦合,在服务网关中会搀和业务系统的逻辑,影响服务网关结构的清晰性,限制了子服务业务的发展。随着业务需求的层层叠加,子服务规模也将随之膨胀。在子服务规模比较小的时候,这种架构还能支撑,实现快速的业务更新。当子服务膨胀到一定程度时,这种架构的劣势将快速地暴露出来,难以支持快速的业务发展,而且后期的维护成本也将陡升。
因此,面对快速的业务迭代,特别是业务扩张到一定程度之后,现有技术方案将难以支撑,系统的稳定性也将受到威胁,同时系统维护成本加大。
发明内容
为了解决现有技术的问题,特别是为了解决在业务的扩展带动后端服务规模扩张时引起的服务网关经常升级导致系统不稳定、维护成本剧增的问题,本发明提出了一种动态的多服务协同作业编排方案以及支持该方案的动态服务网关。
根据本发明的一个方面,提出了一种在动态服务网关中执行的方法,包括:接收客户端请求;在路由表中查找所接收的客户端请求对应的协议,所述路由表包括指示所支持的协议的信息;确定所述客户端请求对应的协议的编排路线图;按照所述编排路线图,依次调用所述编排路线图中的每一个协议对应的子服务。
在本发明的一些实施例中,所述编排路线图可以包括按顺序编排的一个或多个步骤,每个步骤包括单个协议。
在本发明的一些实施例中,所述方法还可以包括:在所述网关的运行期间,配置新的对外协议或更新现有对外协议中的编排路线图。
在本发明的一些实施例中,所述方法还可以包括:接收子服务在启动时的注册请求;以及响应于所述注册请求,将所述子服务支持的协议的注册信息存储到路由表。
在本发明的一些实施例中,所述方法还可以包括:去除重复注册。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510252766.3/2.html,转载请声明来源钻瓜专利网。