用于规范应用之间行为表达方式和对结果的预期。

1.1、设计目标

  • 对于服务提供方来讲,通过服务标准化,能够清晰而简洁的表达本服务提供了哪些接口、定义、以及他们所应实现的具体功能,并且任何对该服务所提供的能力有依赖的应用,都必须按照这套接口来实现服务供应;
  • 对于服务依赖方来讲,(即使用该服务的应用)能够清晰而简洁的表达他所依赖的接口有哪些,分别期望这些接口完成什么样的具体功能,并且任何为其提供服务的应用,只要遵循相同的服务模型,即可实现服务提供方的替换。

1.2、概念定义

对服务模型的定义,如下几点说明:

  1. 服务即接口。我们这里定义的服务,从概念上理解,这是一个对应用能力的抽象表达;但是从实际操作层面,服务的实际体现方式,就是Restful风格的HTTP接口。
  2. 接口是分组的。分组的原则是能力原子化,即我们按照接口的能力范围,将一组完成功能闭环的接口标定为一组。并且,我们将这一组接口,定义为“一个服务模型”。
  3. 服务模型是受管控的。目前,每一个服务模型都是由行业小二在后台制定并发布。ISV在实践过程中可以根据实际情况,向相关小儿提出调整意见。
  4. 服务模型是有版本的。一个基础服务模型,随着不用ISV、不同场景的需求,会有版本迭代。因此,唯一确定一个服务模型提供的接口信息的,是模型ID+版本。

2、详细内容

2.1、简介

在运营后台的服务总线,主要包括服务模型的列表、模型的定义、模型的管理。这个

2.2、模型行业ID

显示模型行业ID,在服务开发或服务调用查询服务模型时,需要使用行业平台ID,如下图所示,点击复制则可复制到粘贴板上。

image.png

2.3、模型列表及管理

展示模型的列表。主要包括运营商自定义的模型列表以及阿里官方的模型列表,自定义服务模型列表,如下图所示:

image.png

阿里官方服务模型列表:

image.png

自定义的服务模型,操作的内容主要包括:版本记录、创建新版本、禁用(处于启用状态时)或启用(处于禁止状态时)

版本记录:点击后,如下图所示:

image.png

创建新版本:点击后,则进入到新版本的创建页面

禁止:点击后,如下图所示:

image.png

2.4、模型定义

对服务模型的定义,如下图所示:

image.png

当创建完模型,保存后,就能对该服务模型下的接口进行定义,如下图所示:

image.png

可以新增参数,如图所示:

image.png

通过接口定义,完成对服务模型的定义,确认后,可以进行发布,发布完成后,即可在阿里云物联网卖家中心,或阿里云IoT的应用托管中心可以看到,ISV可以基于服务模型进行开发或调用。