开发环境上的部署发布

1. 本地打包

应用测试无误后,编译工程并打包,打包前请参考工程目录下的README.md文件。

在工程目录,运行指令“mvn clean package”进行打包,出现“BUILD SUCCESS”说明打包成功,在target目录下生成.war包,将war包的名称改为10197.war(以应用的AppId命名)。

2. 上传构建包

进入应用的详情页面,在版本管理区域,点击列表操作中的“构建部署”按钮,进入该应用的构建部署页面。在开发环境构建部署页面的“当前构建版本”区域,点击“上传构建包”,选择本地打好的10197.war包进行上传。

3. 配置构建参数

构建包上传成功后,显示构建参数配置选项。镜像模板选择Tomcat,开发环境的容器规格默认分配了2核4G的容器资源。点击“构建部署”按钮。

4. 部署发布

在部署发布的过程中,先对程序包进行构建、然后构建镜像,最后进行发布,页面会有进度条来显示部署发布的过程和进度。整个流程完成后,页面显示“构建成功”,并且历史构建版本中添加了一条构建版本记录,点击操作中的“通过”按钮后可以在生产环境发布版本,点击“运行监控”按钮可以进入到该应用的监控页面。在运行监控页面,点击访问地址可以直接访问发布好的应用。访问地址由开发环境域名和端口号组成。

5. 添加订阅

布署发布后,需要将开发环境的地址添加到设备订阅,这样,平台才能将设备上报的数据推送给应用,根据你项目的情况添加订阅即可。

点击“产品中心”—>选择产品—>“订阅管理”—>"添加订阅":

注:此处添加的是产品级的订阅,此产品下所有设备的数据均会推送到应用,想要指定某设备数据上报可以添加设备级的订阅,点击“产品中心”—>选择产品—>选择设备—>找到右侧的"添加订阅标志"—>"添加订阅":

填写地址:

本项目中添加的地址如下图:

http://10563.test.ctwing.cn:8138/tink/post 为设备数据上报接收接口;

http://10563.test.ctwing.cn:8138/tink/operationResult 为指令下发响应接口。

其中10563.test.ctwing.cn:8138为开发环境域名+端口,即步骤4中的应用访问地址;/tink/post及/tink/operationResult为后端开放的路径,如果快速体验Demo项目只需要将应用访问地址替换为你的应用访问地址即可。

6. 添加规则引擎

规则引擎可以将需要的符合条件的数据过滤出来转发到指定的目的地,可以理解为高级版的订阅推送。在我们的Demo中,需要创建两条规则引擎,一条是过滤出湿度大于等于阈值的数据,用于控制开启电机,一条是过滤出小于阈值的数据,用于控制关闭电机(Demo只是为了演示验证规则引擎的作用,并无实际意义)

首先创建规则引擎,点击“规则引擎”—>“创建规则”:

此处选择"可视化创建",将左侧的功能模块拖拽到空白画布,双击即可修改模块关联内容,可视化创建整体图如下:

其中,"选择字段"所填内容如下:

"选择条件"所填内容如下:

最后点击“保存即可”。然后添加转发目的地,点击“添加操作”:

此处填写的接口为:http://10563.test.ctwing.cn:8138/tink/autoControl ,其中10563.test.ctwing.cn:8138为开发环境域名+端口,即步骤4中的应用访问地址;/tink/autoControl为后端开放的路径,如果快速体验Demo项目只需要将应用访问地址替换为你的应用访问地址即可。

参数模板此处填写为:{"command":"on","humidity":"%humidity%"} ,参数模板即为应用希望规则引擎推送的数据格式,应用会接收到以此为模板的数据,在这里,湿度大于55,因此定义了一个command字段为on打开电机,"%humidity%"中humidity为规则引擎中湿度数据的别名(根据实际情况填写),"%humidity%"即为设备上报的湿度数据。

点击"保存",回到“规则引擎”,选择规则,"启动"即可:

同理创建另一条湿度小于55关闭电机的规则引擎,创建的两条规则引擎如下:

SELECT humidity_data AS humidity, deviceId() AS deviceId FROM ruleengine_10079289_10000100 WHERE humidity >= 55 AND deviceId = '10000100aijf'

SELECT humidity_data AS humidity, deviceId() AS deviceId FROM ruleengine_10079289_10000100 WHERE humidity < 55 AND deviceId = '10000100aijf'

详细的规则引擎创建可以参考:规则引擎

搜索结果 ""

    没有搜索结果 ""