wfrest icon indicating copy to clipboard operation
wfrest copied to clipboard

长连接流媒体支持情况咨询

Open EricPengShuai opened this issue 3 years ago • 6 comments

目前我有一个需求场景是流媒体传输:在传输flv视频中,实现一个 http server(如下图),当有浏览器端(例如 flv.js)请求时我需要维持这个长连接,并且 http server 中有一个存放flv数据的内容队列,当有新的flv数据进入内容队列时,http server 需要即时将这些flv数据不断发送给浏览器端,以维持flv视频的不断播放,不知道 wfrest 对这个场景支不支持 http server

就是实现一个具有 HTTP-FLV 服务器,有点类似于 nginx-http-flv-module 中的 http-flv 服务,整个场景就是会不断收到 flv 数据流维护内容队列,然后这个 http server 提供的 http-flv 服务就可以,主要就是:

  1. 维持长连接
  2. 当 flv 内容队列有新数据时即时发送给客户端

在 workflow 也请教了这个 issue https://github.com/sogou/workflow/issues/1131#issuecomment-1368454775

EricPengShuai avatar Jan 02 '23 12:01 EricPengShuai

@chanchann 我觉得wfrest可以结合workflow的push接口,封装出个这样的功能。

Barenboim avatar Jan 03 '23 05:01 Barenboim

@chanchann 我觉得wfrest可以结合workflow的push接口,封装出个这样的功能。

ok好的

chanchann avatar Jan 03 '23 06:01 chanchann

我也有类似的需求,server不定时从kafka接收消费数据后,需要将数据实时推送到前端浏览器vue实现的js页面,这块需要怎么做?

bayueqiankong avatar Mar 29 '23 12:03 bayueqiankong

可以看一下这个SSE功能是否能覆盖这个issue的需求:https://github.com/wfrest/wfrest/pull/160

Barenboim avatar May 12 '23 13:05 Barenboim

请问这个长连接的有demo吗?

tiantianaixuexi avatar Jun 15 '23 08:06 tiantianaixuexi

这里有个例子: https://github.com/wfrest/wfrest/blob/main/example/27_sse.cc 这个例子是通过给"test"这个条件发送信号来触发推送事件。

Barenboim avatar Jun 15 '23 15:06 Barenboim