程序聚合 软件案例 点动物联网平台

点动物联网平台

2025-11-28 13:43:38
行业:物联网
载体:网站、小程序
技术:Go、PostgreSQL、Redis、MQTT

业务和功能介绍

1. 立项背景和目标

立项背景:
随着物联网技术快速发展,企业面临设备管理复杂、数据采集困难、故障响应滞后等挑战。传统物联网平台存在扩展性差、协议支持有限、实时处理能力不足等问题。

项目目标:
构建一个高性能、可扩展的企业级物联网平台,支持海量设备接入、实时数据处理、智能告警分析,为企业提供一站式设备管理和监控解决方案,实现设备全生命周期管理和智能化运维。

2. 软件功能、核心功能模块介绍

核心技术栈:
- 后端:Go + Gin框架 + GORM + PostgreSQL/TimescaleDB
- 架构:微服务 + 事件驱动 + 分层架构
- 消息:NSQ消息队列 + 多级缓存
- 规模:314个Go文件,74,440行代码

核心功能模块:

设备管理模块: 支持设备注册、配置、状态监控、固件升级,提供设备全生命周期管理,支持MQTT、DTU/TCP、Modbus等多种协议接入。

数据采集与处理: 实时数据接收存储、批量数据处理、事件驱动架构,支持流式数据处理和复杂事件处理链。

智能告警系统: 流式告警规则引擎、实时数据触发告警、多渠道通知(邮件/短信/微信)、告警自动恢复机制、静默期管理。

权限管理(RBAC): 基于角色的访问控制、用户管理、菜单权限、数据级权限控制、多租户架构支持。

任务调度: 异步任务处理、任务执行监控、定时任务管理、任务报告生成。

多租户架构: 租户隔离、套餐管理、项目级权限控制、数据安全隔离。

3. 业务流程、功能路径描述

设备接入流程:
设备注册 → 设备类型配置 → 协议适配 → 数据上报 → 状态管理
支持直连设备、网关设备、子设备等多种接入方式,提供设备在线/离线状态实时监控。

数据处理流程:
数据上报 → 协议解析 → 数据存储 → 事件触发 → 告警检测 → 通知发送
采用事件处理器链模式,包含时间戳处理、事件验证、自动恢复、状态处理、告警处理等环节。

告警触发流程:
规则配置 → 流式检测 → 告警生成 → 通知发送 → 告警处理 → 恢复检测
告警状态流转:活跃(1) → 已确认(2) → 已解决(3) → 已关闭(4),支持静默期管理和自动恢复。

用户操作路径:
管理员:系统配置 → 用户管理 → 角色权限 → 设备类型 → 告警规则
普通用户:设备监控 → 实时数据 → 告警处理 → 历史查询 → 报表导出

项目实现

1. 整体架构和设计思路,不同模块使用的技术栈

架构设计思路:
采用现代化事件驱动架构,遵循"入口队列模式 + 独立协议网关"设计理念。严格分层架构(API层→业务层→数据层→模型层),实现高内聚低耦合。微服务就绪的模块化设计,支持插件化扩展。

模块技术实现:
- 设备管理:多协议适配(MQTT/TCP/HTTP)+ 设备影子 + 状态缓存
- 数据处理:流式SQL实时处理 + 批量入库优化 + 分层存储策略
- 告警引擎:流式SQL实时处理
- 物模型:分层存储策略

2. 我的负责模块和结果(量化指标)

主要负责模块:

告警引擎:
- 实现流式告警和即时告警双引擎架构
- 告警规则缓存命中率提升至95%+
- 告警处理延迟从平均2秒降低到500毫秒以内

微信生态集成(完整实现):
- 微信小程序登录授权系统
- 微信订阅消息推送功能
- 微信用户与系统用户绑定机制
- 支持告警信息通过微信实时推送

协议适配优化(性能提升):
- DTU/TCP协议网关重构,支持DD-LINK模式
- 网关设备服务重构,集成MQTT和DD网关双协议
- 设备接入并发能力从1000设备提升至5000+设备

量化结果:
- 代码质量:告警引擎复杂度从A级降至C级(循环复杂度)
- 性能提升:数据处理吞吐量提升300%(从1万条/秒到3万条/秒)
- 扩展性:新协议接入时间从3天缩短至4小时
- 稳定性:系统可用性达到99.9%,支持7×24小时运行

3. 我遇到的难点、坑,和解决方案

技术难点1:高并发设备接入性能瓶颈
- 问题:大量设备同时接入导致连接数激增,MQTT Broker负载过高
- 解决方案:实现连接池管理和负载均衡策略,采用Redis缓存设备在线状态减少数据库查询,实现自适应心跳机制
- 效果:单实例支持并发连接数从1000提升到5000+

技术难点2:实时数据处理延迟问题
- 问题:高频数据写入导致数据库压力,实时告警计算延迟超过2秒
- 解决方案:采用分层存储策略(热数据Redis+温数据PostgreSQL+冷数据对象存储),实现NSQ批量消费机制,使用StreamSQL避免全表扫描
- 效果:数据处理延迟从2秒降低到500毫秒,吞吐量提升3倍

技术难点3:多协议设备接入复杂性
- 问题:不同设备使用不同通信协议,协议转换复杂度高
- 解决方案:设计统一IoTEvent数据模型,采用协议网关插件化架构,实现协议适配器工厂模式
- 效果:新协议接入开发时间缩短80%

技术难点4:微信集成用户状态同步
- 问题:微信用户与系统用户绑定存在并发冲突,订阅消息推送不稳定
- 解决方案:实现分布式锁机制避免重复绑定,采用消息队列确保推送可靠性,添加重试机制处理网络异常
- 效果:用户绑定成功率达到99.5%,消息推送成功率达到99.8%

示例图片视频


GOPHPVUE
30天前活跃
方向: 后端-Go、前端-小程序、
交付率:100.00%
相似推荐
奇安信-大禹平台
大禹是网络安全领域高性能大数据安全分析中台: 1、对设备接入与资产管理; 2、安全能力内置:漏洞检测、情报关联; 3、可以对数据接入与治理,例如:日志、流量、漏洞、威胁情报等数据类型; 4、事件管理与处置:告警归并、溯源分析、工单联动、自动化响应,缩短安全事件处置时间,降低误报率
攻防演练平台
1、背景及目标 赤霄”实战攻防演练管理系统后端采用python+django开发,前端采用javascript + html,在保证代码的可读性、易修改性、易拓展性、跨平台性的同时兼顾低难度、高可用性,由于python的特性,现场实施人员甚至能够根据客户要求现场修改功能以满足客户需求,部署极易,能够在3分钟内启动环境。 可根据攻防环境需要,挂载safeware安全态势感知系统进行演练流量捕获,流量审计等功能。 本平台为轻量化平台,为提供3-5支攻防团队进行攻防演练而设计。 2、功能 本平台采用以成果报告为核心的整体逻辑架构,即红方成员/蓝方成员提交报告、裁判审核报告、大屏展示,在能够满足正常攻防演练活动功能的前提下,减少了大量非必要的功能。 攻击成果展示大屏可滚动显示攻击成果详情、攻击风险级别、裁判评审结果等内容。 攻防实况大屏能够展示单次演习中的攻击威胁总数,满足从综合统计、实时监测、威胁统计三个维度展示攻击实况,攻防实况大屏提供3D街景视角展示。
高压电工操作票填写系统
该小程序聚焦高压电工特种作业培训场景,贴合实操考核要求,精准还原操作票填写规范与流程,支持模拟填写、错误校验、规范指引等核心功能,有效解决线下培训中操作票填写教学效率低、易错点难把控的问题,帮助学员快速掌握填写要点,提升培训效果。
网络管理后端-portal
为公司系统服务,公司核心项目之一,提供第三方(包括监管和集团管理平台)的指令和配置接入到公司系统的能力,以满足监管考核和运营商管理要求。设计处理日活跃域名处理指令20w左右,并完成交换机的南向对接。
高空抛物智能相机开发-高空抛物智能相机开发
1、针对目前居民楼越建越高,且总有行人被高空抛物伤害的新闻,开发此款信息,旨在监控楼上的抛物,并检测到抛物后,自动抓图、录像、生成告警。 2、相机由音视频层、算法层、应用层、协议层等组成,由音视频层采集实时视频,并送算法层分析,分析结果送应用层、协议层进行抓图、录像、告警协议组装等,支持应用层设置算法参数。 3、支持手动框画单元、楼层等信息,设置算法参数,算法检测到高空抛物,将坐标与楼层信息对应,自动判断抛物所在楼层。
帮助文档   Copyright @ 2021-2024 程聚宝 | 浙ICP备2021014372号
人工客服