巫杨询 薛青兴 四川省有线广播电视网络股份有限公司
摘要:本文介绍四川智慧广电云平台建设从规划阶段就重点深入思考了如何进行平台服务治理体系建设,通过梳理业务流程,制定服务治理系列技术规范,搭建和开发企业服务总线,应用OpenAPI技术来支撑开放云服务平台的建设和业务运营,为广电同行业企业建设类似平台系统提供了可参考借鉴的宝贵实践经验。关键词:广电云平台 云服务 服务治理 企业服务总线 OpenAPI互联网时代云服务方兴未艾,大量的云服务平台如雨后春笋般跃然而出,四川智慧广电云平台顺应技术发展潮流,推出行业云服务平台,用于在媒体融合发展的大背景下,承载传媒行业和公共服务行业中众多创新的全媒体场景化应用。四川智慧广电云服务平台从技术架构上分析,一方面云服务平台不仅要承载来自平台自建终端应用的服务连接管理,同时为了拓展云服务平台生态化建设,还需要对来自各种合作伙伴、集团客户、政府机构等第三方应用的大量服务接入请求进行规范和管理;另一方面,云服务平台内部尽管各业务系统相对独立运行,但相互间仍不可避免的存在各种集成数据通信需求,形成比较复杂的内部连接关系。因而,为保障云服务平台的规范有序和运行可靠,并且后继能够支撑其快速迭代升级,从技术体系上亟需建立一种云平台服务治理机制,以服务总线技术中间件的形式,统一规范和管理云平台内外部的各种服务连接请求。通过云平台服务治理体系的建设,既梳理了云平台内部服务间的接口关系,使其脉络清晰,便于追踪和审计,又对来自云平
台外部的服务访问接入进行统一管理和监控,通过OpenAPI打造开放的云平台,同时确保对云服务的使用做到可管可控。
(7)高效营运:以业务的快速发布,实现业务盈利。
(8)品牌推广:基于统一的管理,构建统一的门户、统一的品牌标识,打造专属品牌,从而吸引更多商户的接入,提升品牌认知度。
1 建设目标为了实现云服务平台对企业业务运营战略目标的支撑,四川智慧广电云平台服务治理体系建设目标如图1所示,主要涵盖八个方面的建设目标。
(1)接口管控:建立标准的行业规范,实现统一的接口调用。
(2)资源融合:基于统一媒资管理对多内容源进行统一管控。
(3)业务创新:在标准的规范下,拓展业务创新。
(4)快速上线:将基础能力封装为基础服务统一发布与上线。
(5)统一管理:建立统一的后台管理,节约资源,简化管理流程。
(6)高效合作:以标准的规范,使第三方合作厂商能够快速接入,实现多方共赢。
资源融合2 建设步骤服务治理体系建设的实施工作通常按照如下的四个关键步骤逐步推进。
(1)服务梳理:通过业务层面的流程梳理,确定业务系统间的调用关系,进而确定哪些业务系统可以作为服务提供者,将自身的能力暴露为服务;哪些系统可以作为服务消费者,
品牌推广接口管控高效运营建设目标高效合作业务创新快速上线统一管理图1 服务治理体系建设目标
74
《有线电视技术》 2018年第2期 总第338期
《有线电视技术》 2018年第2期 总第338期
智慧广电通过调用其他业务系统的服务支持自身的业务功能。
个流程的深入分析,最后梳理出该系需要按相应的技术规格表进行汇总整
统与其他系统间的全部集成服务接口。理。组合服务接口技术规格表项说明(2)服务总线接口规范制定:要实现云平台系统间基于服务总线的互联互通,就需要各系统间的服务接口遵从统一的标准规范,这项规范应该具有技术上的通用性,如基于WebService、HTTP等。
(3)服务注册及发布:将服务提供者提供的服务地址注册到ESB(Enterprise Services Bus,企业服务总线),再由ESB以新的地址规范统一发布,供服务消费者调用。此后,服务消费者可以不直接调用服务提供者的服务地址,而统一调用ESB发布的服务地址,由ESB完成对服务提供者的转发。原则上服务提供者应基于统一的服务接口规范提供服务,而服务消费者也应按照统一的服务接口规范调用服务,但当某个系统因特殊原因无法支持统一的接口规范时,可以由ESB实现适配。
(4)服务管控:由于所有服务消费者到服务提供者的服务调用都通过ESB,因此ESB可以对服务调用行为进行有效管控,例如记录访问日志、拦截非法的访问、控制访问流量等。基于访问日志,可以对访问行为进行统计分析,进而对服务质量进行度量。
3 服务接口梳理方法云平台由众多业务系统集成组成,为便于梳理平台的服务接口,通常以某个业务系统作为分析入口,分析与之有集成关系的所有其他相关业务系统,通过梳理得到一个以该系统为中心的业务集成关系图,然后以此为基础进一步分析,再梳理出与该系统相关的所有业务流程,接下来通过对每
换另一个业务系统,按前述步骤进行梳理即可。每一个业务系统服务接口梳理工作的基本步骤如下。
(1)确定系统集成关系图:以被分析的业务系统为中心,分析和标识与之有直接业务集成关系的周边业务系统,确定系统间的交互关系,明确系统间的分工边界,提供系统集成关系图。集成关系图中需重点突出涉及哪些分子业务系统、相互间的数据流、交互时序关系,比较复杂的集成关系配以必要的文字说明。
(2)确定业务流程列表:根据系统集成业务关系梳理的结果,结合相关的业务系统产品需求和设计文档,深入开展业务流程抽取、分解工作,得到初步的业务流程清单,在对各业务流程进行具体分析后,再对业务流程清单进行调整和精炼,经过多轮迭代分析,最终梳理出一份合理而完备的业务流程清单。
(3)确定组合服务接口和基础服务接口:针对梳理出的具体业务流程进行分析,绘制一个比较详细的业务流程图或者数据交互图,然后逐一对每个流程活动按预定的规范进行技术分析,提取出基础服务接口和组合服务接口,其中基础服务接口是原子级的,不能再拆分,组合服务接口通常
是为了简化上层应用调用,接口内部
通过编排一组基础服务接口,对外提供更高抽象层级的服务。组合服务接口通常是直接应用ESB服务编排工具进行服务开发实现,如因内部组合关系复杂需要单独开发实现,则建议将其划归为基础服务接口。最后,将梳理出的组合服务接口和基础服务接口
如表1所示。基础服务接口技术规格表项说明如表2所示。
以上步骤可能是一个循环迭代的过程,并非一次性可以完成。此外,系统间的一个数据交互,实际上可以由提供数据的系统或者可以由接收数据的系统提供接口,此时一般情况下按接收数据的系统提供接口的原则来确定接口的提供者。
4 服务总线接口规范企业服务总线接口规范包括三部分,分别为ESB接口发布规范、ESB接口接入规范、ESB接口管控规范。
4.1 ESB接口发布规范
ESB发布的接口规范包括技术、应用、业务三个层级。
(1)技术级规范
从技术层面规定了服务消费者如何实现与ESB的通信访问及接口调用,可简述为“HTTP(POST)+JSON”形式。
(2)应用级规范
用于对业务应用(包括服务提供者和服务消费者)进行统一管理,但与具体业务无关。
(3)业务级规范
针对某项或某类业务制定的接口规范。
4.2 ESB接口接入规范
服务提供者业务系统为接入ESB,原则上应遵从与ESB接口发布规范相同的规范。如果服务提供者业务系统无法按ESB接口发布规范提供接口,则可以考虑由ESB按照服务提供者业务系统所能提供的接口形式接入,并实现与
75
智慧广电标准接口间的转换。接入及转换方式(1)域:从业务角度将一个特定需根据具体情况制定或开发。
业务范围的服务接口划定为一个域。4.3 ESB接口管控规范
物理上通常一个域会部署在一个单独接口管控规范主要取决于管理需的ESB节点上,故按域划分有助于从求,与具体业务系统无关。根据川网物理上隔离不同业务范围的服务,以的实际需求,主要包括如下内容。
免相互影响。
4.3.1 服务目录
(2)应用系统:指一个特定的服对ESB上注册的服务接口建立目务提供者应用系统。通常一个应用系录并管理。管理的服务信息包括服务统由一个特定的开发商提供,基于特的名称、编号、说明、所属单位、联定的技术架构,物理上对应一组或多系人以及输入输出参数信息等。其中组特定的(用于服务调用的)IP地址输入与输出参数信息可用于对接口报和端口。
文的合规性进行校验。可将服务接口(3)服务:也称接口集群,包含按照“域”、“应用系统”、“服务”、“操一组业务功能上比较接近或关系比较作”四级目录体系进行管理。上级对紧密的接口。从技术角度讲,一个服下级均为一对多的关系,即一个域包务对应一个特定的URL地址;从ESB含多个应用系统;一个应用系统包含管理角度,一个服务对应一组运行期多个服务;一个服务包含多个操作。资源(如线程池),故服务的划分决各级目录的划定原则及具体含义如下。
定了运行期资源的管理粒度。
表1 组合服务接口技术规格表项说明
表项名称说明组合服务接口名称通常是将多个流程活动或操作进行组合封装后映射成一个更高层级的流程活动节点组合服务接口描述对流程中的组合服务进行简要的描述说明同步/异步指定当前的组合服务进行同步/异步处理,如果是异步处理,还需指明是否需要回调及回调接口URI。可由ESB工具进行配置服务注册目录指定组合服务接口在ESB总线中的注册目录,便于后继查找定位,进行服务策略/参数配置及服务接口编排操作服务接口URIESB总线对注册的组合服务接口进行一些策略/参数配置、服务编排、经构建成功后,按相应技术规范重新对外发布新的接口URI基础服务项聚合的所有基础服务接口列表,此处引用基础服务接口的名称进行指代表2 基础服务接口技术规格表项说明
表项名称说明基础服务接口名称通常可映射到具体业务流程中一个流程活动节点基础服务接口描述对基础服务接口进行简要描述说明同步/异步指定当前的基础服务接口进行同步/异步处理,如果是异步处理,还需指明是否需要回调及回调接口URI。可由ESB工具进行配置原生接口URI对应业务系统提供的原生服务接口URI。原则上建议统一采用Restful API+JSON格式数据包接口提供者指定原生服务接口实现归属哪个独立建设开发的业务系统,如BO、BOSS、统一媒资、CDN等服务注册目录指定原生服务接口在ESB总线中的注册目录,便于后继查找定位,进行服务策略/参数配置及服务接口编排操作服务接口URIESB总线对注册的原生服务接口进行一些策略/参数配置、服务编排、经构建成功后,按相应技术规范重新对外发布新的接口URI76
《有线电视技术》 2018年第2期 总第338期
(4)操作:也指服务接口。通过处理输入参数,返回输出参数,来完成一种业务功能。操作是服务提供者提供服务功能的最终体现,一个服务中的多个操作共用一个URL地址,具体是哪个操作由HTTP Header中的特定属性标识。
4.3.2 服务日志
对经过ESB调用的接口访问行为进行日志记录,包括服务请求及结束时间、服务消费者及服务提供者的地址信息、服务调用结果及耗时,以及详细的请求数据、应答数据内容等,可随时检索。
4.3.3 服务统计
统一对服务的调用行为进行统计,如从服务消费者维度,对服务访问行为进行统计,包括调用了哪些服务、调用次数、失败次数、平均响应时间、平均数据量大小等;从服务提供者维度,对服务访问行为进行统计,包括都有哪些系统调用了该服务,以及调用次数、失败次数、平均响应时间、平均数据量大小等。此外,可以针对各类服务,统计服务访问量的分布情况,以及随时间的变化曲线等。
4.3.4 服务安全
基于特定的安全策略对服务访问行为进行管控,例如:对服务消费者的身份进行认证,如基于访问者的IP
进行身份认证,或基于报文的特定内容(如用户名信息或令牌)进行认证,甚至可以与第三方的安全体系集成,最终完成对服务消费者身份的安全认证;对服务访问权限进行校验,如设定特定的服务消费者只能访问特定范围的服务,对于未经授权的服务访问予以拦截,也可以与第三方的安全体系集成,最终完成对服务访问权限的校验;对请求或应答数据进行加密、
《有线电视技术》 2018年第2期 总第338期
图2 服务治理开放架构体系
图3 基于OpenAPI实现SP专区应用
解密、签名、签名校验等,也可以与务能力以服务的形式集成到服务总线,第三方的安全体系集成,完成加密、实现集中管控,进而通过开放平台以签名相关的处理工作。
OpenAPI的形式提供给第三方应用使4.3.5 服务状态控制
用,并实现第三方业务的快速接入。可临时关闭某个服务,任何对处服务治理开放架构体系如图2所示。
于关闭状态的服务进行访问均会被拦其中,ESB主要用于实现对内管截;控制访问流量,如限制某个服务控服务,主要内容包括:集中统一管在单位时间内所允许的最大访问次数理所有服务接口;服务接口调用日志或字节流量,任何超出该限制的访问管理;服务接口调用性能分析统计监将被拦截。
控;提供服务自动发现和注册;编排5 服务治理开放架构体系多个原子服务接口,形成更粗粒度的应用服务接口,并与原子服务接口具建立以ESB为核心的分布式服务有相同的调用风格和安全认证机制;治理开放架构体系,使川网的核心业
提供服务接口调用数据缓存;提供
智慧广电API网关功能。
OpenAPI主要用于支持对外合作运营,主要内容包括:统一实现与第三方应用间的安全通信;对第三方应用进行认证;对第三方应用的服务访问行为进行权限校验和计量;对第三方应用提供不同等级的服务。
6 基于OpenAPI的应用示例基于OpenAPI实现SP专区应用,
主要通过调用云服务平台相关的基础服务、组合服务来实现核心业务环节的处理,实现云服务能力的复用,整个应用需要SP业务系统与智慧广电开放云服务平台协同实现,如图3所示。
SP专区内的聚合页、列表页、详情页等需通过SP自身的系统实现,在SP专区与川网门户之间需基于用户SSO完成用户双向认证。
川网基于多家SP内容元数据的聚合,结合自身具备的版权内容,可为用户提供全局搜索的内容服务。搜索结果页的实现可基于云平台内部服务
完成。
SP专区应用内的订购活动流程,通过专区页面进行产品选择后,订单生成、订单支付等活动都将基于智慧广电云平台的服务完成。
SP专区应用的点播服务流程,经过双方鉴权之后,视频播放、广告播放等活动由智慧广电云平台的服务完成。
参考文献
[1]李锐.通过云服务打造数字电视产品网的探讨[J].电视技术,2014,38(12).
[2]曹凤雪,黄成,薛小锋.一种基于agent的云服务组合的交互模型[J].计算机应用研究,2014,31(12).
[3]蔡昭权.基于ESB的异构系统集成实现[J].计算机应用,2008,28(2):538-540.CATV
77
因篇幅问题不能全部显示,请点此查看更多更全内容