这是一个用Rust构建的高性能物联网开发平台,旨在支持多种协议并提供实时数据处理能力。该平台支持MQTT、WebSocket(WS)、TCP和CoAP协议,使其能够高度灵活地适应各种物联网应用场景。
Github 仓库:https://github.com/iot-ecology/rust-iot-platform
如果您喜欢这个项目,请给它一颗星。
主要特点
-
高性能:用 Rust 编写,利用 Rust 的内存安全和并发功能来提供高效的 IoT 解决方案。
-
多协议支持:支持MQTT、WebSocket (WS)、TCP、CoAP协议,满足广泛的应用需求。
-
实时数据处理:内置实时数据处理机制,确保快速响应和高效数据传输。
-
模块化设计:清晰定义的模块,方便扩展和维护。
架构图
下面是平台的架构图,说明了各个模块如何协同工作:
支持的协议
-
MQTT:支持标准MQTT协议,非常适合实时消息应用。
-
WebSocket (WS):为Web客户端提供实时双向通信支持。
-
TCP:用于设备到设备通信的通用传输协议。
-
CoAP:专为低功耗设备设计的协议,适合嵌入式应用。
功能列表
设备管理:轻松管理所有设备数据和信息。设备分组功能可以根据不同场景对设备进行分组,提高设备管理效率。
人员管理:提供完善的角色、部门、权限管理功能,确保每个用户只能在其授权范围内进行访问,增强系统安全性。
生命周期管理:涉及设备从生产到交付的整个流程,确保每个阶段顺利执行,并可跟踪设备的状态和进度。
协议管理:支持多种常用的物联网协议,通过细致的管理和配置,保证设备与平台之间高效、安全的通信。
数据管理:提供灵活的数据处理和警报配置能力。用户可以根据需要设置各种信号处理和报警规则,保证系统实时响应。
通知管理:通过飞书、钉钉机器人,平台可以及时发送重要通知和警报,确保管理员能够快速响应和处理异常情况。
转发管理:支持数据转发到各种主流数据库,保证设备数据的高效存储和处理,满足不同的存储和查询需求。
设备管理
-
设备详细信息:查看和管理单个设备的详细信息,包括设备配置、状态、日志和使用数据。
-
设备分组:根据功能、位置或其他自定义标准将设备分组,以实现批量操作和集中管理。
人事管理
-
用户列表:管理平台内的用户信息,包括角色分配和访问控制。
-
部门列表:按部门组织用户,以便更好的管理和权限分配。
-
角色列表:定义不同的角色,为每个角色分配相应的权限,保证用户只能访问其角色范围内的平台功能。
-
信息列表:管理与用户、设备和事件相关的附加信息,提供详细记录和搜索功能。
生命周期管理
-
产品列表:管理物联网产品的生命周期,包括创建、更新和状态跟踪。
-
物联网卡管理:管理物联网卡的分配、状态更新和使用情况,保证设备通讯稳定。
-
设备生产管理:跟踪设备生产流程,确保生产进度和质量控制。
-
设备运输管理:管理设备的运输、配送和交付状态,确保及时到达。
协议管理
-
MQTT 协议:
-
MQTT 客户端管理:配置和管理 MQTT 客户端,包括设备连接和消息传输。
-
MQTT 客户端服务节点管理:管理 MQTT 服务节点,控制客户端与服务器之间的连接和消息路由。
-
HTTP 协议:
-
HTTP 处理器管理:管理 HTTP 请求处理,包括不同的 API 接口和请求类型。
-
HTTP 服务器管理:配置和管理 HTTP 服务器以处理来自外部系统的请求。
-
TCP 协议:
-
TCP处理器管理:管理TCP连接和数据流,包括连接池和数据解析。
-
TCP 服务器管理:配置和管理 TCP 服务器以接收和发送设备数据。
-
CoAP协议:
-
CoAP 处理器管理:配置和管理 CoAP 协议的数据处理器,适用于低功耗设备。
-
CoAP服务器管理:管理CoAP服务器,支持设备之间的高效通信。
-
WebSocket 协议:
-
WebSocket 处理器管理:管理 WebSocket 连接处理器以支持实时、双向通信。
-
WebSocket服务器管理:配置WebSocket服务器,为客户端提供实时数据传输服务。
数据管理
-
信号管理:管理来自设备或传感器的信号,包括信号类型、来源和处理方法。
-
信号警报配置:设置和管理信号的警报规则,当信号超过预定义阈值时触发警报。
-
计算规则:定义处理和分析设备数据的计算逻辑和规则。
-
计算参数:管理数据处理所需的参数,保证计算过程的准确性。
-
脚本警报:使用脚本自动警报,支持基于脚本逻辑的自定义警报行为。
-
脚本参数:定义和管理脚本中使用的参数,以便在不同条件下灵活调整。
通知管理
-
飞书机器人:通过飞书机器人发送实时通知,支持自定义通知内容和触发条件。
-
钉钉机器人:集成钉钉机器人发送消息和提醒,确保及时沟通。
转发管理
-
Cassandra:配置数据转发到Cassandra,实现大规模数据存储和快速查询。
-
ClickHouse:将数据转发到ClickHouse,适合实时数据分析和大规模数据存储。
-
InfluxDB 2:支持将时序数据转发到InfluxDB 2,以实现高效的时序数据查询和存储。
-
MongoDB:将数据转发到MongoDB,支持JSON格式的数据存储和灵活的查询。
-
MySQL:将数据转发到MySQL,适合关系型数据存储、管理和查询。
以上是Rust 物联网平台的详细内容。更多信息请关注PHP中文网其他相关文章!