收藏
回答

小程序wss需求下性能问题

问题模块 框架类型 问题类型 终端类型 操作系统 微信版本 基础库版本
框架 小程序 需求 客户端 6.6.7 2.00

-wss里面获取其他用户的聊天信息,并且渲染到页面上面,假如现在有10个人在同一个长连接中,一个人一秒钟说一句话,对应的同一个连接里的客户端用户基本上就是每100ms接收到一次推送,前端使用setData渲染推送消息到页面(我看到文档说不能毫秒级别调用setData),这种需求下面如何保证性能问题,现在人数一增加手机就会卡死以及发烫。


- 需要官方指点迷津,给一个合适的解决办法


最后一次编辑于  2018-06-05
回答关注问题邀请回答
收藏

1 个回答

  • 卢霄霄
    卢霄霄
    2018-06-05

    将新消息放到一个 [] 里,然后每隔2秒 检查 [] 是否为空,不为空,就将里面的东西 setData到界面上,然后将 []置空。注意消息顺序

    2018-06-05
    赞同
    回复 3
    • Blues คิดถึง
      Blues คิดถึง
      2018-06-05

      谢谢,这个方法牺牲了即时性,保证了性能,这样子  用户的消息都会有延迟了   对于一个即时聊天来说  就不太符合要求了

      2018-06-05
      回复
    • 卢霄霄
      卢霄霄
      2018-06-05回复Blues คิดถึง

      在setData前,放个标志位,是否在赋值,设为true。新消息来了,如果在赋值,将新消息放队列里,否则直接setData。在setData的回调里,判断队列是否为空,为空则把是否在赋值的标志位置为false,不为空,就接着新一轮赋值

      2018-06-05
      2
      回复
    • Blues คิดถึง
      Blues คิดถึง
      2018-06-05回复卢霄霄

      非常感谢,使用你说的方法确实优化了不少   赞

      2018-06-05
      回复