由于最近接了比较多的基于已有的Oracle OSB服务总线的管控能力提升项目,因此还得再推荐和介绍下远行完全自研的Oracle OSB管控治理平台。该平台除了有OSB总线的服务管控治理能力外,也包括了对BPEL的管控能力,今天主要介绍OSB部分的管控能力。
对于Oracle OSB总线,你也可以采用Oracle BAM进行业务和性能监控,BAM本身也是一个很完整的产品,但是对于一些个性化的定制和流程定制仍然需要很大的工作,包括一些对于业务监控和服务监控的统计分析报表等。同时远行OSB 管控平台不仅仅是BAM部分的能力,同时也提升了类似服务目录库,服务自动化批量部署,服务预警和流量控制,服务安全等个性化定制能力。
OSB管控平台核心实现思路是在OSB进行服务编排的时候增加了一个定制化的服务节点,通过该类似拦截器的节点来实现所有的管控需求。其核心就包括了日志监控和记录,安全控制,流量控制等。 由于采用这种方法实现,可以看到OSB管控是可以完全脱离BAM运行的,即对于Oracle SOA套件,用户即使只购买了OSB组件,也可以实施OSB管控平台。对于管控平台实施可以基本对已有服务的提供方和消费方不造成任何的影响,而更多是在管控平台实施的时候对已有的OSB服务进行改造,增加拦截器节点。
对于完整的OSB管控平台,主要提供如下几个方面的能力:
其一是中间件层的性能监控能力 ,实际上这块能力在OSB部署的Weblogic中间件的管理界面本身就具备,对于管控平台重点也是对这部分能力进行集成,包括了OSB部署的数据库,Weblogic的核心性能指标监控。
其二是服务性能监控能力 ,其中包括了服务运行次数,运行时间,服务日志等基础监控能力。同时又包括了服务预警和流量控制能力,这些都通过前面说到的拦截器节点来实现。
,其中包括了服务元数据管理和服务定义,服务设计,服务开发和封装,服务自动化部署,服务测试,服务后期运维的完整管理内容和管理流程。当然要实现这些内容也包括了类似服务变更,服务版本,服务问题管理等支撑过程的自动化和流程化管理。
,从最简单的服务运行次数和时长,服务调用并发,服务异常等的统计分析。到上层的基于业务单据监控的业务监控类统计分析。在统计分析部分,平台会首先提供部分基础统计分析功能,其余的仍然是需要通过实施过程中进行报表的个性化定制。
从前面讲的可以看到OSB管控平台的实现有几个重点,包括了底层和OSB引擎对外API的集成,也包括了历史遗留服务接口的改造和拦截器的引入等。同时在性能方面还需要考虑拦截器引入后不能影响到服务本身调用性能,在高可靠性方面要考虑不会因为拦截器节点本身问题而影响到服务访问,这些都是应该在总体规划和设计的时候应该要考虑到的内容。
由于远行自研的ESB服务总线已经实现了ESB引擎和管控功能的分离,因此也可以看到远行当前的管控平台可以很灵活的改造和适配为类似Oracle,Tibco等国外ESB服务总线产品的管控平台。也进一步提升了SOA产品线已有产品的适配能力和扩展性。