V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Felldeadbird
V2EX  ›  问与答

智能家电是怎样做(推送)到秒响应的?

  •  
  •   Felldeadbird · 2022-07-04 09:11:31 +08:00 · 3598 次点击
    这是一个创建于 872 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我从手机点击开关,到机器启动,全程都是 wifi ,机器一秒不到就开启了。

    难不成机器内部一直按秒级 cron 定时器去服务器查数据?全国这么多机器定时去查,不会造成短时间上万并发吗?难道长链接?

    很想了解一下这些家电的实现方案。

    20 条回复    2022-07-04 17:02:40 +08:00
    registerrr
        1
    registerrr  
       2022-07-04 09:13:18 +08:00   ❤️ 3
    mqtt
    joesonw
        2
    joesonw  
       2022-07-04 09:16:58 +08:00 via iPhone   ❤️ 1
    家里有网关的呀
    yyf1234
        3
    yyf1234  
       2022-07-04 09:20:49 +08:00 via iPhone   ❤️ 1
    关键字 物联网 mq
    Felldeadbird
        4
    Felldeadbird  
    OP
       2022-07-04 09:25:07 +08:00
    @joesonw 家里只有路由器、手机和机器。这应该没有网关吧?我不太懂
    joesonw
        5
    joesonw  
       2022-07-04 09:26:53 +08:00 via iPhone
    @Felldeadbird 你有哪些智能设备,有些设备是可以充当网关的,例如绿米的空调伴侣。
    ThirdFlame
        6
    ThirdFlame  
       2022-07-04 09:33:00 +08:00   ❤️ 1
    mqtt tcp 长连接
    feikeq
        7
    feikeq  
       2022-07-04 09:37:06 +08:00   ❤️ 1
    MQTT 是长连接。MQTT(消息队列遥测传输协议)是 ISO 标准(ISO/IEC PRF 20922)下基于发布 /订阅模式的"轻量级"通讯协议,MQTT 这种轻量级低消耗的协议来维护长连接。。MQTT(消息队列遥测传输协议)是 ISO 标准(ISO/IEC PRF 20922)下基于发布 /订阅模式的"轻量级"通讯协议,MQTT 这种轻量级低消耗的协议来维护长连接。
    fiypig
        8
    fiypig  
       2022-07-04 09:45:12 +08:00   ❤️ 1
    也可能是蓝牙
    ScepterZ
        9
    ScepterZ  
       2022-07-04 09:56:52 +08:00   ❤️ 1
    这不和聊天 /通知之类的一样么,选个长连接+服务端可以主动发消息的协议就好了
    lj0014
        10
    lj0014  
       2022-07-04 10:16:36 +08:00   ❤️ 1
    应该是建立了长连接
    yolee599
        11
    yolee599  
       2022-07-04 10:53:34 +08:00   ❤️ 1
    你先把手机的蓝牙和 WIFI 关闭,手机使用 4G 网络看看还快不快。
    rimutuyuan
        12
    rimutuyuan  
       2022-07-04 11:02:47 +08:00   ❤️ 1
    做个不恰当的比喻,同时看抖音直播的人应该比同时在线的智能家居数量多。而且消息队列对于服务器的压力远小于视频。
    ouqihang
        13
    ouqihang  
       2022-07-04 14:36:55 +08:00 via Android
    米家可以看是局域网连接还是广域网连接。
    wohccdaa
        14
    wohccdaa  
       2022-07-04 14:57:07 +08:00 via iPhone
    @yolee599 更快了
    westoy
        15
    westoy  
       2022-07-04 14:57:19 +08:00
    @rimutuyuan

    抖音是预加载列表和内容的, 而且也是落在就近的 CDN 和 PCDN 上, 回复提醒也是周期性推的, 不是实时的
    Herry001
        16
    Herry001  
       2022-07-04 15:01:52 +08:00
    mqtt 就是干这事的……
    sujin190
        17
    sujin190  
       2022-07-04 15:02:42 +08:00
    @Felldeadbird #4 云网关,无法离线使用的都是需要接入远程服务器的,比如米家都是从米家服务器中转命令。设备长连接接入米家服务器就可以实时响应你的操作了,那些纯局域网的就更简单了,设备发现时已经记下了 ip 和 mac 地址,直接给对应地址发送命令就是了啊,前者问题自然是远程服务器崩了你就操作不了设备了,比如前两天米家还崩了多有米家设备都没法用还冲上微博热搜了,后者如果你设备从路由获取的 ip 变来变去大概率是用不了的,而且出门后手机不连接相同 wifi 也用不了,当然本地控制也有其他方案,比如广播消息或者 mdns 啥的
    zsxzy
        18
    zsxzy  
       2022-07-04 15:49:33 +08:00
    我通过 智能音箱控制扫地机器人, 确实也能做到很快响应. 现在这些家电把互联网也玩得很溜了
    vvzero
        19
    vvzero  
       2022-07-04 16:58:19 +08:00
    真要做的话,除了上述 mqtt ,就算你每隔 100ms 用 UDP 轮询一下服务器,也能实现很快的响应
    also24
        20
    also24  
       2022-07-04 17:02:40 +08:00
    突然想起,刚入行的那几年,还有不少人在研究 C10K 问题……
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3036 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 00:15 · PVG 08:15 · LAX 16:15 · JFK 19:15
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.