服务管理平台产品白皮书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
服务管理平台
1产品综述
1.1产品定义
服务管理平台,是将基于服务技术、组件式开发的、独立运行的服务进行统一的接入、统一管理、统一调度,实现异构服务间集成与管理,最终实现所有运行中的服务可以有序、正常、持续的运转。
1.2产品定位
服务管理平台是针对系统庞大、需求持续增加、需求变化较为频繁、接口数目庞大、接口调用频繁,并倾向于使用服务架构系统管理,而提供一体化的服务管理平台。服务管理平台通过集成支撑服务、行业服务、工具服务、中间件服务,对所有的服务进行统一的管理和监控,对上层应用的服务调用提供基础支撑。
2产品核心价值
2.1快捷部署
现有平台,针对单一系统,功能的增加或者原有功能的修改,都需要开发人员重新梳理原有系统接口,并针对每个接口进行调整然后重新测试部署,对开发人员和运维人员都带来不小的负担,开发实施时间长。
服务管理平台正是为解决这一难题而出现的,灵活的服务配置改变原有单模式,将服务按功能或行为划分为响度独立的功能服务,每个服务都可独立部署运行,对外提供统一的服务接口,快速应对用户需求的变化。
2.2强大的服务管理支撑
服务管理平台可接入依照服务模式和灵活的调度策略开发出来的产品模块,实现服务的注册、服务依赖关系的管理、服务的资源目录、服务路由等功能,并可实现服务的计量功能,提供全面化的服务统一管理功能。
2.3一致的服务调用
服务管理平台对接入的服务的运行进行统一的管理,根据服务的调用关系,实现服务运行过程中的降级、熔断等调度功能,最终达到服务能有序、高效、正常的运行。
3产品架构
服务管理平台通过统一网关来接受外部系统的服务调用,并实现服务路由、均衡负载、权限控制等功能。
服务管理平台中的Adapter模块,主要实现第三方服务的接入、具体业务需求的定制和配置管理,以满足不同项目的特定业务和技术需求。
服务管理平台可对接入的服务进行统一的调度,可对运行中的服务根据系统需要进行降级、升级或熔断等操作,保证各服务正常有序的运行。服务管理平台还可以对接入的服务运行状况进行统一的监控,按照消息机制,将故障的服务统一通知给与故障服务相关联的其他服务,避免因故障服务的原因,引起其他服务运行失败。
缓存模块主要实现配置项数据、部分业务数据的缓存,以减少与DB的交互次数,提高效率。
4产品功能
4.1服务网关
提供服务路由、均衡负载、权限控制、流量控制等功能,将权限控制这些较重的非业务逻辑内容迁移到服务路由层面,使得服务集群主体能够具备更高的可复用性和可测试性。API网关是系统的唯一入口,从面向对象设计的角度看,它与外观模式类似。API网关封装了系统内部架构,为每个客户端提供一个定制的API。它可能还具有其它职责,如身份验证、监控、负载均衡、缓存、“请求整形(request shaping)”与管理、静态响应处理。
1)服务路由
即服务使用者从提供者地址列表中,基于负载均衡算法,选择一个提供者进行调用,如果调用失败就再选另一个调用。当服务提供方有多个服务实例时,可以根据请求本身的信息(如参数、URL等)调
用服务方的信息(如IP地址等),服务提供方的信息(如IP地址等)等进行路由过滤,最后过滤出一个或多个实例提供服务。
2)负载均衡
是非常重要的环节,通过负载均衡将请求派发到网络中的一个或多个节点上进行处理。可进行服务的负载均衡完成对请求的分配派发,提供负载均衡的功能以及扩展接口,当服务提供方有多个服务实例时,通过灵活的负载均衡策略选择一个实例进行服务调用。目前提供了多种负载均衡策略。
3)权限控制
针对不同调用方,调用前,需要通过用户鉴权,确定用户身份。对于服务方,需要按照调用方提供的鉴权信息,完成用户身份鉴定,并且通过系统中设置的用户权限,完成用户授权,确定用户是否具有调用该服务的权限。
4)流量控制
由于各类服务的负载能力不同且各有自己的限制,为了防止非预期的请求对服务压力过大而拖垮服务乃至影响整个服务平台,特制定流量服务控制。服务的流量控制策略:分流、降级、限流等。对于流量控制,可以对所有的服务调用总量进行控制,也可以按具体的服务域控制,最细粒度可以单独控制到每一个服务。服务的流量控制包括了入口流量控制和出口流量控制两个层面的内容,对于入口流量控制即当触发流量控制策略后直接在服务调用访问的时候就驳回。而对于出口流量控制利用消息中间件和MQ机制,控制向目标的数据流入速
度。
4.2服务管理
服务的管理主要是对服务的注册、服务查询、服务调度、服务监控等进行的管理。
1)服务注册
包含三类角色:服务提供者,服务注册中心,服务消费者。
服务提供者:服务提供者作为服务的提供方将自身的服务信息注册到服务注册中心,信息包含:隶属于哪个系统、服务的IP/端、服务的请求URL、服务的权重等等。
服务注册中心:服务注册中心主要提供所有服务注册信息的中心存储,同时负责将服务注册信息的更新通知实时的Push给服务消费者。也支持服务的停用。
服务消费者:服务消费者主要职责如下:
1、服务消费者在启动时从服务注册中心获取需要的服务注册信息;
2、将服务注册信息缓存在本地;
3、监听服务注册信息的变更,如接收到服务注册中心的服务变更通知,则在本地缓存中更新服务的注册信息;
4、根据本地缓存中的服务注册信息构建服务调用请求,并根据负载均衡策略来转发请求;
5、对服务提供方的存活进行检测,如果出现服务不可用的服务提供方,将从本地缓存中剔除,服务消费者只在自己初始化以及服务变更时会依赖服务注册中心。在整个服务调用过程中,服务消费者不依赖于任何第三方服务。
2)服务治理
提供管理控制台,每一个服务都有一个唯一的名字,使用负载均衡策略来调用每个服务的实例。在控制台还可以看到每一个服务的状态,同时也可以定制服务信息的链接地址,比如把链接地址定制成接口文档的地址,即可实现在线API的功能。
3)服务监控
异常预警:异常报警是对服务非法操作、服务异常运行、服务注入式SQL攻击等异常情况进行实时报警。
性能监控:构建基于平台的实时的性能分析工具,实现以:实现实时事务跟踪和实现批量分析,形成可用的通信图和延迟统计。
4)安全审计
安全审计记录、维护平台上的各种行为轨迹,为问题查找、定位提供支撑;同时也对平台上服务越权访问、违规操作、损害服务运行安全等行为进行监控、组织和预警。包含:内容审计、行为审计、流量审计。能够提供完整平台的内容检测、信息还原功能,能够监控用户再平台上的行为轨迹对不合规行为事件实时告警并记录,能够实时统计平台当前网络中的各种报文流量进行综合流量分析。