SagooIOT是一个基于golang开发的轻量级的物联网平台。支持跨平台的物联网接入及管理方案,平台实现了物联网开发相关的基础功能,基于该功能可以快速的搭建起一整套的IOT相关的业务系统。
使用Apache-2.0开源协议
SagooIOT提供了支持私有化或容器化形式的部署,用户可以将其轻松部署在单机、集群或容器服务环境中,并且支持横向扩展,以满足不同规模的业务需求。使用SagooIOT能够获得出色的性能表现,提供优异的IOT服务能力。
数据并发
系统可分布式部署,支持百万级数据并发。
设备接入
设备网关水平扩容,支持千万级设备接入。
数据采集
TDengine时序数据库,支持上亿数据采集点
数据通讯
高性能网络组件,非阻塞网络编程,具有极低的通讯延迟。
SagooIOT是一个基于golang开发的开源的企业级物联网基础开发平台。负责设备管理和协议数据管理,支持跨平台的物联网接入及管理方案,平台实现了物联网开发相关的基础功能,基于该功能可以快速的搭建起一整套的IOT相关的业务系统。旨在通过可复用的组件,减少开发工作,简化和加速物联网开发交付。适配多种接入协议(TCP,MQTT,UDP,CoAP,HTTP,GRPC,RPC等)。
详细安装过程,请查看开源项目官网文档。
该程序可以独立部署,直接执行使用,也可以与nginx或是apache联合使用。
CPU | 1核心 |
---|---|
内存 | 1GB |
硬盘 | 40G |
CPU | 2核+ |
---|---|
内存 | 4GB+ |
硬盘 | 40GB+ |
SagooIOT采用Golang开发,拥有良好的跨平台特性。支持的平台如下:
aix/ppc64
android/386
android/amd64
android/arm
android/arm64
darwin/amd64
darwin/arm64
dragonfly/amd64
freebsd/386
freebsd/amd64
freebsd/arm
freebsd/arm64
illumos/amd64
js/wasm
linux/386
linux/amd64
linux/arm
linux/arm64
linux/mips
linux/mips64
linux/mips64le
linux/mipsle
linux/ppc64
linux/ppc64le
linux/riscv64
linux/s390x
netbsd/386
netbsd/amd64
netbsd/arm
netbsd/arm64
openbsd/386
openbsd/amd64
openbsd/arm
openbsd/arm64
plan9/386
plan9/amd64
plan9/arm
solaris/amd64
windows/386
windows/amd64
windows/arm
设备成功连网后,还需要采用特定协议与云平台进行数据交互。下面简要介绍几种常用的设备接入协议,以及选用时的注意事项。
MQTT是一种轻量级的发布订阅式消息协议,工作在TCP协议上。它需要设备与云平台建立持久TCP连接,并完成身份验证后,可以进行数据通信。
MQTT协议具有以下显著优势:
MQTT通过与云平台的长连接,可以实现实时的命令下发和控制。设备可以即时收到控制指令,实现智能家居、农业监控等场景的实时控制。
便于监测设备状态
长连接也便于监测设备在线状态。虽然由于网络问题,设备连接可能会出现断开,但MQTT本身的心跳机制可以很好地检测状态。
MQTT支持不同的安全认证机制。对于资源受限的设备,可以使用简单的用户名密码加密。对安全要求高的场景,可以使用TLS证书机制,保证数据安全。
MQTT使用二进制格式,相比文本协议,可以大幅减少无效负载。这对诸如NB-IoT等低带宽网络来说非常有利。MQTT是一个高效、灵活、安全的物联网消息协议。它非常适合需要实时控制和监测的场景,是物联网的首选接入协议。
HTTP 协议运行在TCP之上,对开发者非常友好。设备可以通过HTTP向云平台发送数据。
HTTP方式简单实用,如果设备资源允许,可以使用HTTPs实现安全传输。但HTTP不如MQTT实时,无法进行命令控制。单纯的数据采集场景可以选择HTTP。
CoAP是一种精简的REST风格协议,运行在UDP上,更适合低功耗设备使用。
CoAP除了更轻量之外,与HTTP使用方式高度相似。如果设备资源有限,可以考虑使用CoAP。
SagooIOT也支持基于TCP的自定义协议接入。比如很多DTU设备采用TCP透传方式。
TCP方式可以高度定制,但需要自主开发通信格式解析。也可以在云平台进行格式转换,以适应不同设备。
设备可根据资源情况、实时性需求、安全需求等,选择MQTT、HTTP、CoAP或TCP接入协议。
无论采用何种协议,都需要进行格式解析、身份验证等处理。SagooIOT提供不同协议的接入方式,以及后端的数据处理与转换功能。
来源:https://www.toutiao.com/article/7267933751366271529/?log_from=625c16f9d653c_1692669199455