组合服务平台(Sm@rtSS)
首页 >  软件产品 >  S++新一代SOA >  组合服务平台(Sm@rtSS)

组合服务平台(Sm@rtSS)

Sm@rtServiceStudio 组合服务平台是面向 S++、基于数据、应用整合、高度可扩展、解决业务复杂度和业务变化的平台,具有集成特性和面向服务特性为一体的基础架构。

组合业务平台分为运行平台、管理控制台和集成开发工具 IDE。运行平台其上运行的业务是以服务的方式配置在容器上的,服务主要以配置文件形式存在;管理控制台以页面提供可视化操作运行平台的资源;IDE 是生成并管理资源的集成开发工具。

运行平台包括:协议管理、接入流程、服务质量、元数据管理、接出管理、组合服务、服务资源池、组合服务引擎、事务管理、异常管理、基础组件等。

管理控制台包括:参数管理、节点管理、服务管理、元数据管理、服务有效性控制、异常处理管理、流量控制、故障隔离、日志查询、交易流水、日终处理、对账管理、冲正管理等。

集成开发工具 IDE 包括:协议开发、渠道开发、渠道适配流程开发、服务识别开发、异常处理开发、系统识别开发、服务(业务服务、基础服务)开发、组合服务开发、拆组包开发、服务及其他资源部署、测试报文自动生成、服务测试、断点调试、流程跟踪、挡板下发、版本发布、版本导入、增量抽取、组件仓库等。

该产品有如下功能特点

  • 拥有高可用性和高稳定性的开发框架,可以方便地实施各种类型的业务;
  • 深入应用 S++ 架构思想,可实现服务的抽象和复用及流程重组;
  • 产品内置多种服务组合类型,可方便开发人员选择使用;
  • 产品提供可视化开发工具,方便服务组合开发;
  • 产品提供服务多态性,真正实现了服务的继承与动态调用。

服务多态性

组合服务平台真正实现了 S++ 理念中的服务的多态性,使得系统间的访问不再依赖于对象,而是面向服务,通过多态性消除系统间的耦合性。与面向对象的方式不同的是,当一个消费者调用一个抽象服务的时候,消费者不需要知道具体要调用哪一个派生服务,从而实现跨系统的多态调用;同时,针对异构系统,由于不需要实现远程对象的调用,所以消费者不需要加载任何与派生类相关的信息,从而保证了异构系统间多态调用的实现。所以组合的过程中,可以建立独立的组合服务应用,并且在组合业务应用中实现服务的多态性,而不需要业务系统配合。举例说明,假设组合应用中某流程需要调用服务 A,服务 A 具有 A1、A2、A3 这三个派生服务,那么在组合应用中引入所有这些服务的定义就可以实现业务流程的多态性。将多态性的实现从业务系统中剥离出来的好处是,当 A1、A2、A3 分属于不同的业务系统时,仍然可以很好的实现,同时不会影响业务系统的稳定性。

服务多态性的概念
服务多态具有以下特征
  • 服务多态必须是运行态提供的能力,开发态只需要关注服务的抽象定义,从而实现业务流程的稳定性。
  • 服务多态必须对业务透明。即,在业务流程中不应该出现与运行时动态变化相关的代码。如果在业务流程中需要判断一些要素,根据要素由业务来完成服务的动态变化,那么就不是服务多态。
  • 服务多态必须支持跨系统的远程服务调用。当业务流程中需要调用外部服务的时候,服务动态变化的实现必须是自动的,不需要本地业务系统进行支撑。
  • 服务多态必须自动的支持业务要素的重载和映射转换。当业务流程调用的父类抽象服务时,其业务要素可以被子类服务的业务要素重载,例如缴费服务中一个业务要素“待缴费标识号”,缴电话费子类中就会被重载为“待缴费电话号码”,那么这个重载映射的过程必须由系统来完成,应用应该完全透明。
服务多态性解决的问题域

服务多态性主要为解决系统间相互访问产生的耦合性问题,由于面向对象方法引入的强耦合性,造成了传统的系统间调用必须手工的维护业务分支,从而进一步导致业务流程不稳定难以维护。

1. 服务多态主要面向系统间相互访问,系统内更高效的方法还是对象的多态性。

2. 服务多态用于解决系统扩展问题,防止业务流程中服务节点的扩展对流程本身造成影响,从而导致需要人工修改流程的问题。

3. 服务多态可以屏蔽同类业务分支,例如缴费服务存在缴电话、缴水费等这些种情况;对于不同类型的业务分支无法利用多态性,例如当账户余额充足时缴费,不足时返回异常,这样的分支是无法利用多态性进行简化的。

4. 服务多态不能解决应用架构问题,就如面向对象一样,在不同应用架构下服务多态的实现方法可能有很大的差异,甚至某些架构下服务多态性不一定能优雅的实现。


项目咨询

亲爱的朋友,如您对我们的产品感兴趣,您可以通过以下方式联系我们