p2p流媒体技术(简述流媒体的特点)

【前言】今天发现二哥在搞流媒体,顿时来了兴趣(之前在考试维护的时候经常听老师说P2P等),追问之下之前林哥搞成功过,而且写了一系列博客;于是乎便翻开博客,认真看了看,写的非常不错:从概念到安装实现(linux和windows)再到性能测试对比非常不错(详见:http://blog.csdn.net/u012407484/article/category/2732453);…

大家好,又见面了,我是你们的朋友全栈君。

强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan

【前言】

    今天发现二哥在搞流媒体,顿时来了兴趣(之前在考试维护的时候经常听老师说P2P等),追问之下之前林哥搞成功过,而且写了一系列博客;于是乎便翻开博客,认真看了看,写的非常不错:从概念到安装实现(linux和windows)再到性能测试对比非常不错(详见:http://blog.csdn.net/u012407484/article/category/2732453);

    在看博客之前和二哥交流,自己当时认为流媒体是P2P,看了林哥的博客后对流媒体的概念了解了,感觉不太对劲,于是乎马不停蹄在网上度娘了一把进行验证,果然发现流媒体和P2P是不同的两个东西,但是P2P技术在流媒体领域中应用比较广泛,也难怪之前自己将两者混为一谈。

    通过在网上查资料和林哥的博客自己对传统媒体,流媒体,加P2P的流媒体技术有了更多的了解,在此与大家共享。

【流媒体进化之路】

    1、传统媒体:刚开始的时候大家在网上看视频或音频等媒体是采用传统媒体的方式:从服务器下载完后再能进行播放:

                   p2p流媒体技术(简述流媒体的特点)

    2、流媒体:随着人类生活越来越丰富,品味越来越高(比如:视频要超清滴等),逐渐发现传统媒体的方式不能满足人类的需要(比如:要看个超清的电影可能需要缓冲4个小时);于是乎流媒体技术应运而生:

                    p2p流媒体技术(简述流媒体的特点)

    3、加P2P的流媒体:随着互联网的快速发展,利用互联网进行娱乐的人越来越多,相信大家有这样体会,每到上网高峰期自己看视频卡的要死;这便是普通流媒体中存在一个问题,服务器的压力太大,服务器性能和带宽承受不住;很简单一个解决方案:加大服务器的带宽,提高服务器的性能,或许会暂时解决问题,但是当客户再多,服务器的性能和带宽又承受不住,实践表明这种客户增长速度要远大于服务器和带宽的增长。于是乎应用P2P技术流媒体应运而生:

     (1)最开始只有客户A获取资源示意图:

            p2p流媒体技术(简述流媒体的特点)

     (2)过一会儿后客户B获取资源示意图:

             p2p流媒体技术(简述流媒体的特点)

     (3)再过一会儿客户C访问资源示意图:

          p2p流媒体技术(简述流媒体的特点)

    (4)不难看出采用P2P技术后刚开始是从服务器上获取初始资源,随着客户机不断获取资源,后来的客户机可根据相应的算法判断到离其最近的机器上(并不一定是客户机哈)有自己想要的资源然后去获取之;不难看出当客户机越多,资源分布在客户机中的概率越高,自然而然获取资源更快;所带来的体验更好(比如:看视频时,同时看的人越多反而越流畅了)。

【总结】

    1、从传统媒体—>流媒体—>含P2P流媒体:技术复杂度逐渐递增,人的体验越来越好;

    2、随着人类的生活越来越丰富需求越来越高,从而推动技术在不断的发展;   
    3、学习的兴趣来源于经历来源于好奇心。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/125765.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • MySQL中tinytext、text、mediumtext和longtext等各个类型详解[通俗易懂]

    MySQL中tinytext、text、mediumtext和longtext等各个类型详解[通俗易懂]一、字符串类型类型范围说明Char(N)[binary]N=1~255个字节binary:分辨大小写固定长度std_namecahr(32)notnullVarChar(N)[binary]N=1~255个字节binary:分辨大小写可变长度std_addressvarchar(256)TinyBlob最大长度255个字节(2^8-1)Blob(Binarylarge…

  • 群晖docker使用教程_docker的使用

    群晖docker使用教程_docker的使用概括Docker与传统虚拟机的区别与传统虚拟机的区别Docker的安装的安装Dockerdaemon,client,containerd镜像与容器操作容器运行配置Docker网络配置网络配置AlpineDockerImage制作自己的DockerImageDocker安全性问题安全性问题Dock

  • mac idea 2021 激活【中文破解版】

    (mac idea 2021 激活)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~https://javaforall.cn/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~4M7H…

  • 平分石头

    平分石头平分石头题目描述:有一n个石头,它们的重量分别是W1,…,Wn.写一个程序,把它们分成两堆,使得两堆石头的重量差最小。输入格式:输入n(1≤n≤20)表示石头的个数。第二行n个石头的重量W1,…,Wn(1≤Wi≤100000)输出格式:输入最小的差(绝对值)样例输入:5581327…

  • 88hash 饰品交易平台 立刻取回的csgo开箱网站「建议收藏」

    88hash 饰品交易平台 立刻取回的csgo开箱网站「建议收藏」88hash饰品交易平台立刻取回的csgo开箱网站官方链接:www.88hash.com推广码:csgo(注册使用csgo随机赠送$0.5-$10刀)状态:有货直接取回,无货需要排队等待取回

  • vue双向绑定失效_vue热更新失效

    vue双向绑定失效_vue热更新失效为什么会失效呢首先vue数据双向绑定是通过数据劫持结合发布者-订阅者模式的方式来实现的实现方式是get和set方法然后是通过Object.defineProperty()来实现数据劫持的。然后呢要是,实现数据的双向绑定,首先要对数据进行劫持监听,因为写的代码没有被监听到,所以只能手动setthis.$set(obj,key,value)查找的资料:1.实现一个监听器Observer,用来劫持并监听所有属性,如果有变动的,就通知订阅者。2.实现一个订阅者Watche..

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号