内核功能扩展

针对CP7的内核功能扩展需要使用此功能进行相关开发,如用户登入Coolpy7 mqtt borker的身份验证,扩展消息记录到数据库等功能时。微服务作为一种更适合Coolpy7的技术架构,经过我时间的技术选型和性能测试,最终选定了CoAP作为扩展服务协议。

概述

Coolpy7从版本号:V7.2.1.1开始使用本新方式进行相关内核功能扩展。选用CoAP协议进行相关的服务端,CoAP协议使用UDP底层通信,没有头阻塞问题,性能更优于http等 基于TCP的其他协议。CoAP协议类似简化版的http协议,在消息体积方面更有优势,更节省带宽。

业务说明示意图

当相关事件发生时内核触发Coolpy7 Extend Service相对应相关的事件处理函数。

技术架构说明示意图

Coolpy7 Extend Service支持服务多个Coolpy7,更适合以微服务形式进行部署。

实例演练

本演练说明如果操作构建一个Coolpy7 core对一个扩展服务

假设一个Coolpy7 Core服务位于192.168.101.1,一个扩展服务位于192.168.101.4。可以通过以下操作过程进行联调开发。

1.Coolpy7 Extend Service (此操作前请先本当前系统安装好Golang环境)

2.Coolpy7

扩展服务绑定端口后,内核的ha参数可用多种方式进行连接,如:通过域名连接[xxxx.com:5683],通过内外网IP[xxx.xxx.xxx.xxx:5683] 等方式。

扩展服务源代码

扩展服务开源地址:https://github.com/Coolpy7/coolpy7_extend_service

性能测试

性能测试源代码:https://github.com/jacoblai/go-coap/blob/master/example/client/bench_test.go

Last updated

Was this helpful?