深度集成

在浅度集成的基础上,将 ISV 开发的 APP 与 supOS 能力有效融合.

例如 supOS 的对象建模管理、计算任务、大数据分析、数据采集、工作流等。


请求/响应(同步请求方式)

同步指的是请求方的调用同步,即请求方向总线发出服务请求后,即可从总线获取返回的响应消息。

supOS服务总线将直接调用提供方的服务获取响应数据,然后将响应消息返回给请求方。

这种方式只需要服务提供方提供符合supOS服务总线接入规范的接口,并将服务注册到supOS服务平台上。

这种模式存在以下特点:
1. 服务请求方调用提供方的服务:服务编号为提供方的服务号;
2. 要求请求方、提供方系统同时在线并可用;

实现步骤

  • 准备服务说明书,描述服务的相关业务目标和内容;
  • 服务提供方根据具体业务需求,并按supOS标准规范解析接收报文和返回响应报文,完成开发服务
  • 在supOS管理平台中,注册该服务
  • 服务请求方按照supOS标准规范要求生成服务调用报文,并根据服务编号进行服务调用,完成调用后按supOS标准规范解析响应报文。

深度集成-实现步骤


推送/异步/发布订阅

发布方通过异步方式向supOS推送消息,消息成功发送到supOS后,发布方的任务即完成(即使supOS还未完成实际的向其他第三方系统的推送工作)。

supOS会将消息路由给服务订阅方处理,或直接调用提供方服务处理。

发布订阅是一对多的,即一个发布方,可以有一个或多个订阅方

对于发布订阅场景,发布方相当于请求方(即发布请求),订阅方相当于服务提供方(服务调用的动作是接收订阅请求并处理)。

场景特点

  • 发布方系统,向supOS发送消息,服务编号为发布方的服务号;
  • 订阅方系统,从supOS订阅消息,服务编号为订阅方的服务号;
  • supOS平台负责将发布方消息转换为订阅方消息
  • 这种场景不要求发布方、订阅方系统同时在线可用。

深度集成-异步订阅


待办集成

第三方企业应用可以通过supOS的OpenAPI将自身的工作流待办数据同步到supOS待办中心,为企业提供统一的工作流处理入口。

对接准备

  • 第三方应用的用户、人员、菜单数据需要和supOS进行同步;
  • 在supOS打开第三方应用页面需要做单点登录,否则在登录supOS之后打开第三方待办仍需要登录第三方应用。

调用流程

  • 准备好以上条件之后即可接入流程,用户使用过程如右边;
  • 以上交互流程涉及到的工作流接口有:创建待办任务、更新待办任务、删除待办任务。

深度集成-待办集成流程


数据集成

supOS工业数据总线采用数据流与数据表两种数据来源进行数据集成。

  • 数据流指具备无边界的实时数据,通过实时计算引擎进行处理;
  • 数据表指持久化的静态数据,通过离线批处理引擎处理。

深度集成-数据集成


主数据同步

主数据同步策略

  • 在supOS平台建立一份映射表;
  • 映射表保存SAP中主数据标识与supOS主数据标识的映射关系;
  • 当SAP有主数据变更时,supOS主动拉取SAP的主数据,并在supOS平台生成映射关系,同时将数据同步到supOS主数据库中;
  • 当存在分类与级别不一致时,需要人工进行校对;

深度集成-主数据同步策略


数据或服务的重用

APP集成是从APP开发者发起,将本APP内需要公开提供给其他APP或用户使用的数据按照supOS平台的对象模型进行建模并注册到supOS的过程。

当某个APP开发者实现了这个功能后,该APP安装后其他APP或用户就可以通过supOS的对象服务接口来查询这个APP所产生的数据。

如果APP开发者未实现这个功能,则可以由企业IT人员或工程实施人员根据APP的数据开放模式利用supOS平台的数据处理模块的功能来完成对象建模和处理任务的开发和运行,从而达到相同的目的。

当企业IT人员在项目中新开发APP过程中可以利用supOS平台所提供的对象服务接口来访问上面过程所构建的对象模型,从而实现数据的重用


微服务应用

基于supOS标准功能设计开发的高代码APP能够支持以容器化的方式托管在supOS里运行,但第三方应用如果也需要托管在supOS上则需要遵循相应的要求做一定的 开发调整。

基本要求

  • 第三方应用本身已经完成微服务化改造,能够以docker容器化运行,且容器镜像需要基于supOS所提供的基础镜像进行构建。目前supOS只支持openjdk:8openjdk:11的基础镜像,其他基础镜像将在未来根据产品规划增加。
  • 第三方应用的微服务本身需是无状态服务,以支撑能够水平扩容。其所依赖的存储可以借助supOS平台所提供的能力,也可以由外部资源提供
  • 为了能够让普通用户更好的使用APP所产生的数据,可以要求第三方应用厂商将其数据库对接到supOS的天湖上
  • 目前关系型数据支持mariadb协议,其他类型将在未来根据产品规划增加。同时还需要将其领域模型以supOS的对象模型进行定义,并注册到supOS上

参考文章

APP集成技术与规范-概述