sockets 和 前端轮询选择

有这样一个需求,有一个第三方实时聊天的接口,对方会返回聊天信息的列表

{
    [
        msg1:[
            {
                reply1
            },
            {
                reply2
            }
        ],
        msg2:[
            {
                reply1
            },
            {
                reply2
            }
        ]
    ]
}

我要展示这个列表目前有 2 种方案

  • 方案1
    前端每 2 秒轮询一次请求接口
  • 方案2
    用 sockets,监听进入到这个频道,触发一个开始计划任务,每 2 秒请求一次对方接口,然后 sockets 通知给前端,监听离开频道的时候,触发关闭计划任务

这种场景用哪种更合适

《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
最佳答案

对方接口是长链接吗,是的话可以配合socket,不是的话直接js轮训就行了,还省事

3年前 评论
____ (楼主) 3年前
____ (楼主) 3年前
讨论数量: 4

sockets比较合适吧

3年前 评论
____ (楼主) 3年前

对方接口是长链接吗,是的话可以配合socket,不是的话直接js轮训就行了,还省事

3年前 评论
____ (楼主) 3年前
____ (楼主) 3年前

我们之前项目有个在线聊天,用的是前端没2秒轮询。每天峰值也就500上下。还是看业务量需求吧= =

3年前 评论
____ (楼主) 3年前
loveinalife 3年前

业务量不大,怎么简单怎么来

3年前 评论
____ (楼主) 3年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!