有个挺头疼的问题:设备要保持在线,随时响应主人的召唤,但又不想太费电。
这时候,长连接技术就像是位聪明的勇士,找到了在节能与响应速度之间的平衡点。
长连接勇士的日常优化
想象一下,你手机里的那些应用,它们就像是王国里的勇士,时刻待命。但传统的做法是,它们不停地和服务器聊天(发送和接收数据),这自然很耗电。
有一位长连接勇士呢,它聪明地设定了“闹钟”,只在需要的时候才跟服务器打个招呼,其余时间就安心休眠。
更绝的是,它还发现每次和服务器聊天时,其实真正有用的信息就那么一小会儿。
于是,它进一步缩短了每次聊天的时间,只传递最关键的信息,然后马上回去睡觉。这样一来,电量就省下来了。
省电智者的思考
省电智者默默观察着这一切, 并深入思考了长连接勇士的实践
减少通信次数和通信时长, 就可以节省王国的粮草
省电智者把规律刻在了一块大石头上
次数(↓) * 时长 = 耗电量(↓)
次数 * 时长(↓) = 耗电量(↓)
次数(↓) * 时长(↓) = 耗电量(↓↓)
省电智者又思考另外一个问题,
如何在王国量产和迅速醒来之间达成平衡呢
他打听到另外一个王国-降功耗找合宙, 原来他们的王国一直就有深耕这一领域, 在次数/时长/粮草之间获得了平衡
PRO模式 --> 次数 * 时长(↓) == 耗电量(↓)
STD模式 --> 次数(↓) * 时长(↓) == 耗电量(↓↓)
那代价是什么呢?
然而,这种节能方式也有其代价。
长连接勇士减少了通信次数和时长,可能会导致错过重要的信息或信息不完整。
如果通信次数太少或时间太短,甚至可能被传递消息的驿站误判为故障,从而被忽略。
那应该怎么办呢?
长连接勇者向省电智者求助, 而远方主人也了解到这个情况, 他表示可以多喊几次, 确保勇士们总能听到。
真实世界中的答案
在业务侧多发几次. 假设一次的成功概率是99.9%, 那么喊三次的成功概率就是
(3*99.9%)= 299.7%.
不好意思串台了, 前面的是台湾算法,
正规算法应该是
1- (0.1% * 0.1% * 0.1%)= 99.9999%
也就是百万分之一的概率, 已经是极小概率事件了, 甚至小于TCP的丢包率了。
审核编辑 黄宇
-
省电
+关注
关注
0文章
14浏览量
8164 -
连接
+关注
关注
2文章
95浏览量
20947
发布评论请先 登录
相关推荐
评论