0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

疑惑重重!长连接怎样才能省电又稳定唤醒呢?

合宙LuatOS 来源:合宙LuatOS 作者:合宙LuatOS 2024-08-08 11:00 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

有个挺头疼的问题:设备要保持在线,随时响应主人的召唤,但又不想太费电。

这时候,长连接技术就像是位聪明的勇士,找到了在节能与响应速度之间的平衡点。

长连接勇士的日常优化

想象一下,你手机里的那些应用,它们就像是王国里的勇士,时刻待命。但传统的做法是,它们不停地和服务器聊天(发送和接收数据),这自然很耗电。
有一位长连接勇士呢,它聪明地设定了“闹钟”,只在需要的时候才跟服务器打个招呼,其余时间就安心休眠。

更绝的是,它还发现每次和服务器聊天时,其实真正有用的信息就那么一小会儿。

于是,它进一步缩短了每次聊天的时间,只传递最关键的信息,然后马上回去睡觉。这样一来,电量就省下来了。

省电智者的思考

省电智者默默观察着这一切, 并深入思考了长连接勇士的实践
减少通信次数和通信时长, 就可以节省王国的粮草
省电智者把规律刻在了一块大石头上
次数(↓) * 时长 = 耗电量(↓)
次数 * 时长(↓) = 耗电量(↓)
次数(↓) * 时长(↓) = 耗电量(↓↓)
省电智者又思考另外一个问题,
如何在王国量产和迅速醒来之间达成平衡呢
他打听到另外一个王国-降功耗找合宙, 原来他们的王国一直就有深耕这一领域, 在次数/时长/粮草之间获得了平衡
PRO模式 --> 次数 * 时长(↓) == 耗电量(↓)
STD模式 --> 次数(↓) * 时长(↓) == 耗电量(↓↓)

那代价是什么呢?

然而,这种节能方式也有其代价。

长连接勇士减少了通信次数和时长,可能会导致错过重要的信息或信息不完整。

如果通信次数太少或时间太短,甚至可能被传递消息的驿站误判为故障,从而被忽略。

那应该怎么办呢?

长连接勇者向省电智者求助, 而远方主人也了解到这个情况, 他表示可以多喊几次, 确保勇士们总能听到。

真实世界中的答案

在业务侧多发几次. 假设一次的成功概率是99.9%, 那么喊三次的成功概率就是
(3*99.9%)= 299.7%.
不好意思串台了, 前面的是台湾算法,

正规算法应该是
1- (0.1% * 0.1% * 0.1%)= 99.9999%
也就是百万分之一的概率, 已经是极小概率事件了, 甚至小于TCP的丢包率了。

wKgZomax0JaACDSHAAhAbEqOp1Q823.pngwKgZomax0UiAIQxLAAoPzDux5vQ191.png
审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 省电
    +关注

    关注

    0

    文章

    17

    浏览量

    8464
  • 连接
    +关注

    关注

    2

    文章

    103

    浏览量

    21912
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    BLE为蓝牙Mesh网络筑基:全屋智能家居怎样同时省电连片可控?

    全屋 智能家居 中的灯具、面板、环境传感器、遥控与网关等设备数量多、分布散,仅靠传统点对点蓝牙往往难以同时满足省电稳定覆盖与可扩展。 低功耗 BLE (Bluetooth Low Energy
    的头像 发表于 03-25 16:15 2940次阅读

    Debian 69未检测到Intenso NVME,怎样才能让它工作?

    嘿。我刚刚设法更新到 2.5.0 并启动了 Debian 版本 69。 但未检测到我的新 NVME SSD它在闪烁,但也许我必须做其他事情然后将其内置? 我怎样才能让它工作? 谢谢
    发表于 03-25 06:38

    储能EMS控制器(7) — 如何快捷验证储能柜内设备接入的正确性?

    储能柜项目,初期要接入集成设备(PCS、BMS、电表等)进行调试,设备调试过程比较繁琐容易出错,怎样才能便捷地验证储能柜内设备接入的正确性?简介储能柜项目,初期要接入集成设备(PCS、BMS、电表
    的头像 发表于 01-23 11:40 353次阅读
    储能EMS控制器(7) — 如何快捷验证储能柜内设备接入的正确性?

    快问快答:产品气密性检测NG了?1分钟精准定位泄漏点的实战方法

    成本,还会严重干扰质量判断。精诚工科真水测试仪,漏点定位一步到位那么,当气密测试出现泄漏不良时,到底怎样才能高效、准确地找到漏点?时间就是金钱。产线每停滞一分钟,
    的头像 发表于 12-10 17:34 1341次阅读
    快问快答:产品气密性检测NG了?1分钟精准定位泄漏点的实战方法

    CW32L010从DeepSleep模式唤醒后时钟启动不稳定什么原因?

    CW32L010从DeepSleep模式唤醒后时钟启动不稳定什么原因?
    发表于 11-18 06:24

    防水连接器8芯:信号连接重要吗?

    在多路信号传输场景中,防水连接器 8 芯是设备间的 “信息枢纽”—— 它能同时承载 8 路独立信号或电力,且具备防水防尘能力。不少人疑惑:不就是多几根芯线,信号连接真有那么重要?其实,惟兴科技 8 芯防水
    的头像 发表于 10-15 18:25 838次阅读

    光伏连接器:如何在山头上实现稳定连接

    山头上的光伏电站,是利用山地资源发电的重要选择,但山头多风、温差大、沙尘多的环境,却给光伏连接器的稳定工作带来不小挑战。很多电站运维人员疑惑:光伏连接器怎么
    的头像 发表于 09-05 14:56 1154次阅读

    #红外传感器有哪几种?怎么用?怎样才能选对?

    传感器
    iczoom
    发布于 :2025年09月02日 10:52:41

    aicube的n卡gpu索引该如何添加?

    请问有人知道aicube怎样才能读取n卡的gpu索引,我已经安装了cuda和cudnn,在全局的py里添加了torch,能够调用gpu,当还是只能看到默认的gpu0,显示不了gpu1,gpu0是集显,训练速度太感人了 你只有一块英伟达的卡,aicube不支持AMD的显
    发表于 07-25 08:18

    CYT2B93CAE怎样才能接收特定 ID 的中断?

    你好,我正在使用 CYT2B93CAE 使用设备配置器 5.3,我选择 RX 缓冲区来接受特定的 ID(例如,0x020)。然而,问题是我在总线上的所有帧上都收到了中断,而不仅仅是专用 ID。 当其他所有 ID 均未发生中断时,我怎样才能接收特定 ID 的中断?
    发表于 07-15 07:09

    WICED IDE 6.6.1.1怎样才能连接到自定义硬件?

    设备? 我们怎样才能指示 WICED-IDE 使用我们的 4 通道 UART2USB 转换器提供的 “普通” VCOM COM 端口之一? 有人能给我一些关于如何连接我们的定制硬件并验证基本功能的说明和见解吗。 任何帮助将不胜感激
    发表于 07-09 07:01

    在CYBT-213043-EVAL上调试不稳定怎么解决?

    ;。 有时会遇到下一个断点,但在大多数情况下,我只会收到一条错误消息,调试不起作用: 错误:[cyw20819a1.cpu] 找不到免费的 FPB 比较器! 错误:无法添加断点:资源不可用 我怎样才能克服这个问题?
    发表于 07-02 06:06

    将CYW20706基于硅的蓝牙模块(CYBT-343151-02)连接到定制板上的MCU,怎样才能将链接配置为未确认数据模式?

    我将 CYW20706 基于硅的蓝牙模块(CYBT-343151-02)连接到定制板上的 MCU。 它在确认数据模式下工作,没有问题 但是我怎样才能将链接配置为未确认数据模式
    发表于 06-27 08:23

    电路图中寻找电压源头的疑惑

    在电路图中准备找一下SUSON这一电压的源头,搜索后出现了两个令人疑惑的结果,如图 上面是图1 上面是图2 当然最后的答案是图二,这里就有一个疑惑,为啥图二不是
    发表于 06-18 10:04

    怎样才能安全地按住ctrc +c日志阅读器然后才能停止并重新启动日志?

    的读取过程,我将无法在 FX3 中操作任何东西,所有命令都不起作用,所有控件写入/读取都将不起作用 以下是两个函数 我怎样才能安全地按住 ctrc +c 我的日志阅读器然后才能停止并重新启动日志
    发表于 05-27 07:11