[开源]一个开源的、企业级的物联网平台,经千万级设备平台验证

科技一飞开源 2024-08-07 08:18:35

一飞开源,介绍创意、新奇、有趣、实用的开源应用、系统、软件、硬件及技术,一个探索、发现、分享、使用与互动交流的开源技术社区平台。致力于打造活力开源社区,共建开源新生态!

一、开源项目简介BudIot 开源物联网设备平台

BUDIOT 是一个开源的、企业级的物联网平台,它集成了设备管理、协议解析、消息订阅、场景联动等一系列物联网核心能力,支持以平台适配设备的方式连接海量设备,支持在线下发指令实现远程控制,支持扩展水电气等各类计费业务场景。

本平台是在千万级设备实时计费物联网平台经验基础上,在不损失性能的前提下进行功能删减、结构优化而来,小而美,同时又具备灵活的扩展性。

二、开源协议

使用MIT开源协议

三、界面展示

四、功能概述项目特性轻架构

采用自研开源 BudWk 框架,结构清晰、代码简单、学习成本低

高性能

架构水平扩容,支持百万设备连接,支持数十万级数据并发

易扩展

采用 RocketMQ、MongoDB 时序数据集合、Redis 缓存等技术,消息中间件可选 RabbitMQ、Kafka,时序数据库可选 TDEngine、ClickHouse 等

多协议

支持 TCP、UDP、MQTT、HTTP 等多种网络协议,支持 AEP、OneNet 等物联网平台接入,支持各类设备协议自定义开发

便部署

采用前后端分离模式开发,后端 Java 微服务支持单机或集群模式、容器化等多种部署方式

低成本

特别适合数十万级、百万级设备的接入和管理,具有极大的灵活性可根据客户需求定制开发各种功能

设备接入

支持多协议(MQTT、HTTP、UDP、TCP)自定义设备协议解析接入。支持 AEP、OneNET、厂家平台等平台对接接入。能满足物联网平台中各类接入场景要求,缩短物联网设备接入研发周期。

数据存储设备有效数据:采用 MongoDB 时序集合存储,平台支持 TDengine、ClickHouse、ElasticSearch 等时序数据存储方式的平替设备原始报文:采用 MongoDB 存储,可配置TTL,过期自动删除UP过程数据,减少磁盘占用,降本增效设备事件数据:采用 MongoDB 存储,按年月分表设备指令数据:采用 MongoDB 存储,按年月分表业务数据:支持 MySQL、MariaDB 数据库,可改造为达梦等各类国产数据库缓存数据:采用 Redis 分布式缓存,使用 Jedis、Redisson 客户端连接五、技术选型开发框架

基于自研 BudWk 开源Java微服务框架(单应用版本)

开发环境OpenJDK 11Redis 6.xMariaDB 10.xMongoDB 7.0.xRocketMQ 5.2.x六、源码地址

访问一飞开源:https://code.exmay.com/

0 阅读:1