物联网
文章平均质量分 79
研究物联网平台开发及应用
microrain
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
物联网平台的“暗礁“:从千级到百万级连接的踩坑实录
经是物联网平台的标准做法了,但真要用到生产环境,里面还是有不少细节需要注意的。顺便提一下,我们开源的 SagooIoT 平台已经实现了上面提到的大部分功能,代码可以直接参考。很多新手容易犯的错是,不管什么场景都用同一个模式,觉得这样最保险。最重要的是,要有状态监测,发现问题能及时响应。我见过最糟糕的设计是每个实例一个独立配置,这样的系统最多能接几百个就撑不住了。合理的做法是分层设计,按类型分一层,再按实例分一层。实际经验是,大部分场景用通用方案就够了,但一些特殊场景必须针对性优化。第一个细节是参数配置。原创 2026-03-05 11:34:33 · 53 阅读 · 0 评论 -
Modbus接入“急诊科“:一个物联网老架构师的病例档案
我们曾经有个项目,前期为了赶进度没做这方面的设计,结果上线后各种性能问题,最后花了三个月重构才稳定下来。刚开始做的时候,总想着把各种极端情况都考虑到,结果设计做得过于复杂,开发周期拉长。物联网系统是典型的分布式系统,设备端、边缘层、云端、业务系统,每个环节都可能出问题。微服务框架如果是Go语言,Gin或Echo都可以,不要太纠结,团队熟悉哪个就用哪个。最重要的是,选型要符合团队的技术栈,不要为了追新而用不熟悉的技术,出了问题没法快速解决。架构设计、接口规范、部署文档,这些当时不写,过段时间自己都不记得了。原创 2026-03-05 13:38:48 · 199 阅读 · 0 评论 -
IoT安全架构设计的设计与实现心得
我们曾经有个项目,前期为了赶进度没做这方面的设计,结果上线后各种性能问题,最后花了三个月重构才稳定下来。刚开始做的时候,总想着把各种极端情况都考虑到,结果设计做得过于复杂,开发周期拉长。即使某个环节出问题,也不影响其他环节,数据不会丢,最多是延迟一会儿。物联网系统是典型的分布式系统,设备端、边缘层、云端、业务系统,每个环节都可能出问题。微服务框架如果是Go语言,Gin或Echo都可以,不要太纠结,团队熟悉哪个就用哪个。最重要的是,选型要符合团队的技术栈,不要为了追新而用不熟悉的技术,出了问题没法快速解决。原创 2026-03-04 23:54:32 · 236 阅读 · 0 评论 -
聊聊MQTT协议在物联网平台中的最佳实践的实践经验
如果你也在做相关的东西,不妨去看看,说不定能省掉一些踩坑的时间。最重要的是,设备端要有连接状态监测,发现断线了要能自动重连。实际上大部分场景QoS 1就够了,盲目追求高QoS会增加服务器的负担,降低系统的吞吐量。这样即使有人拿到了一个设备的证书,也没法冒充其他设备。MQTT协议现在已经是物联网通信的事实标准了,但真要用到生产环境,里面还是有不少细节需要注意的。这个级别的开销比较大,需要四次握手,一般只在非常重要的控制指令场景下使用,比如远程开关机。设得太长,连接断了很久服务器才发现,这段时间的数据就丢了。原创 2026-03-04 23:45:15 · 235 阅读 · 0 评论 -
聊聊视频监控中心的实践经验
刚开始做的时候,总想着把各种极端情况都考虑到,结果设计做得过于复杂,开发周期拉长,上线时间推迟。我们现在的做法是,每个关键环节都有指标上报,有异常自动告警,出现问题能快速定位到具体环节。物联网系统是典型的分布式系统,设备端、边缘层、云端、业务系统,每个环节都可能出问题。做物联网平台的这些年,有一个很深的体会:技术方案没有绝对的好坏,只有适合不适合。改进后的版本,各个环节互不影响,任何一个环节出问题,都不会影响数据接收。最重要的是,选型要符合团队的技术栈,不要为了追新而用不熟悉的技术,出了问题没法快速解决。原创 2026-03-04 23:43:53 · 237 阅读 · 0 评论 -
IoT安全架构设计技术架构详解
在物联网平台建设中,IoT安全架构设计是一个核心议题。IoT安全架构设计是IoT平台建设的关键环节,需要根据实际业务场景选择合适的技术方案。[设备层] → [接入层] → [处理层] → [应用层]> 标签: #架构设计 #微服务 #云原生 #分布式系统。3. **演进方向**:云原生架构成为趋势...1. **业务需求**:随着设备规模增长...2. **技术挑战**:传统方案无法满足...### 为什么需要IoT安全架构设计。### 什么是IoT安全架构设计。IoT安全架构设计指的是...原创 2026-03-04 22:14:12 · 64 阅读 · 0 评论 -
深入解析:高性能 SSE 服务器的设计与实现
这个 SSE 服务器的设计和实现展现了 Go 语言在并发编程和高性能网络服务方面的强大能力。通过精心的设计和多层次的优化,它能够高效地处理大量并发连接和实时消息推送。然而,任何系统都有提升的空间。引入消息队列,支持更大规模的分布式部署。实现消息持久化,支持离线消息重放。添加更细粒度的监控和性能指标收集。通过分析这个 SSE 服务器,我们不仅学习了如何实现高性能的实时通信系统,还深入理解了 Go 语言的并发模型和内存管理策略。这些知识和技巧无疑会在未来的系统设计中发挥重要作用。开源的。原创 2024-09-17 11:28:44 · 1705 阅读 · 0 评论 -
Gorilla/Mux 中的 Session 管理:实现自定义中间件
虽然 Gorilla 提供了出色的sessions包,但直接集成到 Mux 路由器中需要一些额外的工作。简化会话的设置和使用提供一致的接口来访问会话数据轻松地在整个应用中应用会话管理根据需求自定义会话行为有时,你可能想对某些路径禁用会话管理。},通过实现这个自定义的 Session 中间件,我们不仅简化了 Gorilla Mux 应用中的会话管理,还提供了一个灵活的框架来满足各种需求。无论是简单的用户认证还是复杂的状态管理,这个中间件都能胜任。原创 2024-09-09 12:59:28 · 951 阅读 · 0 评论 -
Go语言中实现安全高效的JWT认证:自定义中间件解析
通过使用这个自定义的JWT中间件,我们可以在Go应用中轻松实现安全、高效的用户认证。它不仅提供了灵活的配置选项,还可以很容易地集成到现有的项目中。请参考我们的NexFrame 企业级开发框架记住,安全是一个持续的过程。即使使用了JWT,我们仍然需要时刻关注潜在的安全威胁,并及时更新我们的安全策略。希望这篇文章能够帮助你更好地理解和使用JWT认证。如果你有任何问题或建议,欢迎在评论区留言讨论!我们在开发SagooIoT企业级开源物联网平台过程中,有更多有意思的应用,可以供大家参考。原创 2024-09-09 07:24:05 · 1773 阅读 · 0 评论 -
构建灵活的多域名访问系统:Go语言实践
支持多个域名访问根据不同的域名提供不同的内容或服务灵活地管理域名和相应的配置高效地处理请求,保证性能ID string// 其他配置项...原创 2024-09-03 16:59:59 · 1477 阅读 · 1 评论 -
构建灵活的搜索系统:Go 语言实践
首先,我们定义一个通用的这个接口定义了四个基本操作:创建索引、索引文档、搜索文档和删除文档。原创 2024-09-03 16:54:31 · 1429 阅读 · 0 评论 -
实现多云对象存储支持:Go 语言实践
首先,我们定义一个通用的这个接口定义了三个基本操作:上传对象、获取对象和删除对象。原创 2024-09-03 16:49:32 · 1253 阅读 · 0 评论 -
zerolog 封装:打造更强大、更灵活的日志系统
在现代软件开发中,一个强大而灵活的日志系统是不可或缺的。本文将详细介绍如何封装库,以创建一个更加易用、可配置且功能丰富的日志系统。原创 2024-08-07 14:55:31 · 730 阅读 · 0 评论 -
在Go语言中如何实现变参函数和函数选项模式
在Go语言编程中,我们经常会遇到需要给函数传递可选参数的情况。传统的做法是定义一个结构体,将所有可选参数作为结构体字段,然后在调用函数时创建该结构体的实例并传递。通过这种方式,我们可以很灵活地控制传递哪些可选参数,而不需要创建复杂的结构体。每个可选参数都是一个独立的函数,它们的作用只是设置参数的值。Go语言的一个很酷的特性就是支持变参函数,通过结合变参和高阶函数,我们可以用一种非常灵活和优雅的方式来实现可选参数。函数中,我们展示了三种不同的调用方式:不传递任何可选参数、只传递。在函数内部,它首先创建一个。原创 2024-05-24 05:44:30 · 570 阅读 · 0 评论 -
通过Redis实现一个异步请求-响应程序
在分布式系统中,经常需要不同的服务或组件之间进行通信和协作。传统的同步请求-响应模式虽然简单直观,但可能会导致阻塞和性能问题。为了解决这个问题,我们开发了一个基于 Redis 的异步请求-响应程序,实现了请求和响应的解耦,提高了系统的并发性和响应能力。原创 2024-04-21 07:38:37 · 893 阅读 · 1 评论 -
物联网系统中物模型定义的简要说明
物模型由若干条“参数”组成,参数按描述的功能类型不同,又分为属性、方法和事件。标准参数 为了实现设备功能的统一理解。通过对物模型的基础的理解,就可以更灵活的使用物联网平台的相关数据。通常通过北向接口与业务系统进行对接使用。事件,就是定义的由设备端触发的临时性上报的数据,如设备端告警等。方法,就是定义通过平台端可以远程调用设备端的某一功能的方法。属性,就是定义的由设备端规律性的定期上报的数据。关于物模型的使用,可以参考。原创 2023-10-05 19:40:10 · 610 阅读 · 0 评论 -
物模型概述与说明
物模型是对设备在云端的功能进行描述,包括设备的属性、功能、事件和标签。物联网平台使用一种名为TSL的物的描述语言来定义物模型,该语言采用JSON格式。通过组装设备上报的数据,您可以根据TSL进行操作。原创 2023-06-26 08:24:20 · 929 阅读 · 0 评论 -
如何用go写一个基于事件驱动的SSE的程序
SSE(Serversentevents)是浏览器向服务器发送请求并保持长连接的技术,服务器通过长连接将数据推送到浏览器。SSE通常用于实时更新网页内容或获得服务器推送的通知。这是一个简单的SSE服务器实现,可以在本地启动一个基于事件驱动的SSE服务器,在浏览器中访问"http://localhost:8080/stream"即可订阅事件。原创 2023-06-05 16:57:41 · 2029 阅读 · 0 评论 -
一个开源的基于golang开发的企业级物联网平台
SagooIOT是一个基于golang开发的开源的企业级物联网基础开发平台。负责设备管理和协议数据管理,支持跨平台的物联网接入及管理方案,平台实现了物联网开发相关的基础功能,基于该功能可以快速的搭建起一整套的IOT相关的业务系统。原创 2023-06-02 14:21:52 · 2423 阅读 · 0 评论
分享