首页 > 其他分享 >WebRTC-web实时通讯(转)

WebRTC-web实时通讯(转)

时间:2022-11-07 13:00:14浏览次数:44  
标签:web 缓存 架构 数据库 实时 服务器 WebRTC 客户端


WebRTC ( Web Real-Time-Communication) 不需要插件便能支持音频和视频通信。

主页:http://www.webrtc.org
胖客户端,其实瘦客户端尽管有很多的优点,但是一个显而易见的问题是造成了极大的资源浪费

WebRTC比AJAX有更深远影响的一个主要理由,是IT技术潮流又重新回到了胖客户端Rich-UI的路子。WebRTC的核心就是点到点(Peer-to-Peer)之间的各种数据(包括文件、图片、声频和视频)实时交互,既然前台客户端之间如此的哥俩好,也就意味着后台服务器基本可以歇着了。不知道大家有没有注意到一个很有意思的现象,几十年来IT技术的发展似乎不停地在画圆圈


其实瘦客户端尽管有很多的优点,但是一个显而易见的问题是造成了极大的资源浪费,个人电脑芯片的发展日新月异,现在随便一个桌面电脑就比当年70、80年代的大型服务器的运算功能要更强大,如果程序都是B/S架构,运算和业务处理都在后台进行,还要这么好的个人电脑干啥?更要命的是,当初设计B/S架构主要是用来做企业级应用解决方案的,同时在线的用户数量顶天了不过几千乃至上万人,B/S架构应付起来很轻松。但是随着B2C应用的迅猛发展,在线用户数量的直线暴涨,瘦客户端、胖服务器架构迟早要出问题。


果不其然,随着近年电子商务的兴起,大型电商碰到最难缠的技术挑战就是如何在超大流量下保持网站正常运行,围绕着这个核心问题出现了种种的技术架构和解决方案:从最开始的物理分离Web服务器和数据库,到使用Smart Client来增加客户端的页面缓存,到使用DNS负载均衡以增加硬件,到使用反向代理软件Nginx+Squid来将静态或相对静态的页面进行缓存,到使用第三方CDN (Content Delivery Network) 服务来加快网站反应速度,到使用ESI (Edge Slide Include) 来将动态页面中相对静态的片段进行缓存,到使用MemCached系统将数据库中重复读取的数据缓存到内存中,到数据库的分库、分表、垂直分区、水平分区,到基于LVS (Linux Virtual Server)的数据库双机、多机热备,到增加通用的框架如DAL (Data Access Layer) 来实现分库分表的数据访问,到数据读写分离和廉价存储方案,到现在进入大型分布式应用时代和廉价服务器群时代。。。


IT技术也是在螺旋形反复不停的向上提升着,最新的证明就是即将面世的WebRTC技术,让我们大家都拭目以待,看看这项近十年来最令人兴奋的技术创新能给我们的生活带来怎样的变革吧。


原文:http://haikuo81.iteye.com/blog/1634049

标签:web,缓存,架构,数据库,实时,服务器,WebRTC,客户端
From: https://blog.51cto.com/u_15862653/5828940

相关文章

  • 项目运行npm run dev报错npm ERR! [email protected] dev: `webpack-dev-server --inline --
    目录一、问题描述二、问题原因三、解决方法1.查看vue版本是2.9.62.卸载3.安装4.安装5.正常启动。一、问题描述vue项目运行dev,之前没有问题,但是今天直接报错如下npmER......
  • 用Rust实现一个多线程的web server
    在本文之前,我们用Rust实现一个单线程的webserver的例子,但是单线程的webserver不够高效,所以本篇文章就来实现一个多线程的例子。单线程webserver存在的问题请求只能串行处......
  • 用Rust创建一个简单的webserver
    目的本节的例子教大家用Rust语言创建一个简单的webserver程序。webserver中涉及到的两个主要协议是超文本传输协议(HypertextTransferProtocol,HTTP)和传输控制协议(Tran......
  • 004 Web Assembly康威游戏之优化
    0介绍视频地址:https://www.bilibili.com/video/BV1eg411g7c8相关源码:https://github.com/anonymousGiga/Rust-and-Web-Assembly1说明在上一节的实现中,我们是在Rust中实现......
  • HTML躬行记(4)——Web音视频基础
    公司目前的业务会接触比较多的音视频,所以有必要了解一些基本概念。文章涉及的一些源码已上传至Github,可随意下载。一、基础概念本节音视频的基础概念摘自......
  • webflux 实现前一个请求是后一个请求的参数
    当前一个请求结果是后一个请求的参数时,在Handler是进行逻辑处理:Service层publicFlux<Integer>responseDepartmentListByHospitalId(Integerid){returnth......
  • The Social Web: data representation
    参考链接:clickhere本次assignment所用的jupyterbook为a2_datarep.ipynb:{"cells":[{"cell_type":"markdown","metadata":{"id":"dcMf4aubeMI9......
  • 基于AD Event日志实时检测GPO后门
    01、简介在一些勒索病毒的案例中,我们可以看到这样的案例,攻击者通过域控组策略下发勒索病毒加载脚本,从共享服务器下载并执行勒索病毒样本,从而导致内网大规模范围内的病毒感......
  • 《网络是怎样连接的》web浏览器的探索
     1.生成HTTP请求消息首先,这张图特别重要,这把网络整个的连接过程表示出来了,整个过程讲述的是在浏览器输入网址(url)之后,web浏览器解析网址信息,生成http请求消息,然后先把we......
  • webstorm里面react快速创建模板
    webstorm里面react快速创建模板rcc+tab键--用ES6模块系统创建一个React组件类rccp+tab键--创建一个带有PropTypes和ES6模块系统的React组件类rcfc+tab键-......