
去年我们给自己定了个目标:让博富特物联平台扛住十万台设备同时在线。年中压测的时候,监控大屏上的数字跳到 100,000 的那一刻,群里安静了两秒,然后炸了。
三个关键设计
接入层:MQTT、CoAP、HTTP 多协议网关,连接池管理海量长连接,边缘节点先做协议转换和数据预处理,云端只接收结构化的干净数据;消息层:中间件分区加批量消费削峰填谷,重试队列和死信队列保证数据不丢;存储层:按时间分区归档,兼顾查询性能和存储成本。
这三层设计没什么花哨的新概念,难的是每一层都做到位——接入层扛住连接风暴、消息层扛住突发流量、存储层扛住长期积累。
压测里发现的真问题
第一次压测,连接风暴把网关打崩了——设备断网恢复后同时重连,握手请求瞬间挤在一起,网关队列溢出。后来在设备端加了随机退避重连机制,让重连时间在几秒内随机分布,问题解决。
第二次压测发现的是慢消费者问题:个别设备的异常数据格式导致消费端卡顿,影响了整条消息链路。最终在接入层加了数据格式校验,坏数据在源头就被拦下。
这些经验的去向
压测暴露的这些问题和对应的解法,我们已经沉淀成平台的默认配置和接入规范。现在新客户接入时,设备厂商会拿到一份接入要求清单,把踩过的坑提前避开。
平台下一步的演进方向
十万台只是阶段性目标。接下来我们要解决的是异构设备的大规模接入——不同厂商、不同协议的设备如何在一个平台里统一纳管,包括设备影子同步、OTA 升级、异常自动诊断。这些能力看似不性感,却是平台走向工业级的关键。
压测的工具与流程
我们的压测流程是:先定指标(连接数、消息吞吐、响应延迟、丢包率),再用模拟器分阶段加压——10%、50%、100%、120%,每个阶段观察瓶颈并记录。工具上以自研模拟器为主,配合开源压测组件做协议级验证。压测不是一次性活动,每个大版本发布前都要回归。
高并发没有银弹,每一层都要打磨。好在我们已经把这套经验沉淀成了产品能力。
关于博富特科技
[ "深圳市博富特科技有限公司成立于 2020 年,总部位于广东省深圳市,是一家专注于企业级软件定制开发与数字化解决方案的技术服务商。公司自成立以来,始终坚持以技术为核心、以客户价值为导向,致力于为政企客户提供高质量的软件产品与技术服务,业务覆盖全国。", "公司聚焦定制软件开发、移动应用开发、系统集成、大数据与数据分析、AI 应用开发、IoT 物联网解决方案及信创适配与安全等七大核心方向,服务客户遍及资源回收、智慧城市、政务信息化、企业数字化转型、智慧物流、B2B 交易、跨境贸易及碳资产管理等多个行业领域。" ]
媒体垂询:深圳市博富特科技有限公司 · 19925739956 · zita@szbofute.cn
