当前位置: 首页 > news >正文

不要域名能建网站么太原百度seo优化推广

不要域名能建网站么,太原百度seo优化推广,网站制作与建立,株洲网络营销推广哪家好mediasoup基于socket.io的交互消息来完成join-room的请求过程。Join的过程#xff0c;实际就是获取stream的过程#xff0c;也就是视频加载时间(video-load-speed)。在RTMP系统#xff0c;视频加载时间是秒开。Mediasoup给出的第一个frame是I-frame#xff0c;但由于交互的…mediasoup基于socket.io的交互消息来完成join-room的请求过程。Join的过程实际就是获取stream的过程也就是视频加载时间(video-load-speed)。在RTMP系统视频加载时间是秒开。Mediasoup给出的第一个frame是I-frame但由于交互的消息较多(8条)node.js是单线程处理框架并发处理能力明显不足。即使50个并发也有超过20%的用户视频加载时间1000ms。 Join-room的过程由8条消息组成 #1: roomEventHandler:createRoom,roomIddemo-ch-12 #2: roomEventHandler:join,roomIddemo-ch-12 - addPeer:tXYB1vc5tzNaPQ3TAAFX,demo-ch-12-10.146.11.63 peers46 - {event:User joined,roomId:demo-ch-12,name:user_270,ip:10.146.1.169,peers:1,routerId:6e981d85-386b-4fab-b693-9c3fd733d228} #3: roomEventHandler:getRouterRtpCapabilities,roomIddemo-ch-12 #4: roomEventHandler:createWebRtcTransport,roomIddemo-ch-12 #5: roomEventHandler:getProducers,roomIddemo-ch-12 #6: roomEventHandler:consume,roomIddemo-ch-12 #7: roomEventHandler:consume,roomIddemo-ch-12 #8: roomEventHandler:connectTransport,roomIddemo-ch-12 Exit-room过程仅一条消息 #1: roomEventHandler:exitRoom,roomIddemo-ch-12 - removePeer:tXYB1vc5tzNaPQ3TAAFX,demo-ch-12-10.146.11.63 peers45 - {event:exitRoom,reason:{}} Mediasoup-client在获取到webrtc streaming data后交给chrome等浏览器提供的api进行render渲染。这个还需要几十ms时间才能真正观看到视频。 在对node.js框架下的webrtc-server进行多进程MP/多线程MT改造前先要对消息处理模块socket.io和webrtc流媒体处理模块mediasoup-worker进行介绍。 app express() httpsServer httpolyglot.createServer(credentials, app) httpsServer.listen(config.listenPort) iowsSvr sockio(httpsServer, {cors:true, cookie:{name:iows,sameSite:strict,maxAge:86400} }) httpServer是一个单进程基于它的socket.io-event处理程序是多线程。 for (let i 0; i numWorkers; i) {let worker await mediasoup.createWorker({logLevel: config.mediasoup.worker.logLevel,logTags: config.mediasoup.worker.logTags,rtcMinPort: minPort,rtcMaxPort: maxPort}) //一个mediasoup-worker fork出一个子进程。} 首先尝试多线程MT方案用node.js的worker_threads模块。 const { Worker, isMainThread, parentPort, workerData } require(worker_threads)function iowsSvrListener (ioSvr) {ioSvr.on(connection, (socket) {if (isMainThread){const wsWorker new Worker(__filename, { workerData: socket })wsWorker.on(exit, () {console.warn(wsWorker exit.)wsWorker.terminate()})wsWorker.on(message, (msg) {console.debug(wsWorker recv:, msg)let socket msg.socketsocket.onAny(async (eventName, args, cbFunc) {await roomEventHandler(eventName, args, socket, cbFunc)})socket.on(disconnect, async (args) {await roomEventHandler(disconnect, args, socket)})})}else {parentPort.postMessage(workerData)setInterval(() {}, 60e3)}})} 上面这段代码运行报错 - exitHandler:[object Promise],errorfunction noop() { } could not be cloned. socket is a complicated object which can not be passed to worker. 实际上socket.io就是多线程框架因此我认为在多线程里面再去实现一个multi-threads是没有意义的。 下面再尝试一下多进程用const cluster require(cluster) 由于mediasoup-worker也是多进程因此就成为socket.io server mediasoup-worker的架构这种框架就大大增加SFU这种webrtc-server处理的复杂性。比如一个broadcaster在processor#1上进行直播有一个room#1一个观众从processor#2上来他根本就无法join到room#1。这种情况就得要求processor#1上的mediasoup-worker pipe到processor#2上来才行。当然还有一个办法是processor#1上的socket.io forward msg to processor#2上的socket.io进行处理内部转发消息处理流程显得复杂了多进程带来的效率提升恐怕也会被吃掉。 最终的结论就是只能维持当前单进程socket.io server 多进程mediasoup-worker的框架不变。如果想要进一步提升单台SFU-server的join速度只能采用Go语言的协程goroutine机制了但这能带来多大的性能提升呢毕竟node.js的socket.io server性能也不差而且整体来说mediasoup worker能够处理多大的视频流量这受限于VPS服务器的bandwidth。 1 Gbps的网络单进程mediasoup-worker就可以轻松处理(cpu load 60%)可支持到200 peers(video audio)。那么一个5Gbps的网络满负荷运行需要5颗cpu加上socket.io需要一颗cpu那么6 core cpu的VPS就行了。
http://www.hkea.cn/news/14424435/

相关文章:

  • 网站更改了资料 百度什么时侯来抓取交互式网站和非交互式网站
  • 如果提高网站小程序制作需要什么技术
  • 电商网站开发技术难点wordpress 主题 百科
  • 合肥家居网站建设怎么样最新网站制作公司哪个好
  • 网站建设的利润率多少成都 企业网站设计
  • 怎样做网站的优化排名宁远做网站
  • 网站怎么盈利网站换空间上怎么办
  • 网站优化建设扬州wordpress如何修改栏目的模板
  • 张家界建设网站公司公司做网站需要哪些内容
  • 公司网站做百度推广需要交费吗免费开源分类信息系统
  • 房地产网站的设计要求网站建设 建议
  • 哪里有网站建设哪家好小程序的下载
  • 用asp做旅游网站泸州市住房和城乡建设网站
  • 免费高清大图网站河南做网站公司有哪些
  • python网站开发优缺怎样做货源网站
  • 中卫市住房建设局网站wordpress主题emlog
  • 成都建设招标网站首页WordPress国内开发主题
  • 哈尔滨多语言网站建设西安好的皮肤管理做团购网站
  • 文明校园建设专题网站手机网站 手机app
  • 怒江州建设局网站巫溪网站建设
  • 综合性医院网站源代码下载wordpress采集文章后定时发布
  • 德州汇泽网站建设南宁做网站外包
  • 姑苏区最新通告东莞seo整站优化
  • 网站建设方案书写安庆什么网站做火
  • 国家建设局网站公司网站做的一样算不算侵权6
  • “设计网站”网站域名区别
  • 如何做 行业社交类网站怎么用网站模板
  • 有什么兼职做设计的网站好第一次跑业务怎么找客户
  • 电信宽带做网站大埔县住房和城乡规划建设局网站
  • 北京网络建站模板国外超酷设计网站