如何构建媒体流服务器

时间:2011-02-20 18:26:26

标签: streaming distributed media

我们想构建一个媒体流服务器,并想知道选择硬件和软件时的策略。

我们的一些要求:

  • 我们自己主持一切
  • 带宽不是问题(我们有良好的支持)
  • 商品硬件(没有昂贵的NAS,SAN)
  • 支持大文件
  • 不想使用Flash Media Server

这里的情况与你们之前可能遇到的情况略有不同。专业系统管理员和开发人员的成本比在存储解决方案领域与硬件或软件供应商签订合同要便宜得多。我们扩展的方式是购买便宜的商品硬件,并且(可能)使用各种开源软件自行构建基础设施。

我们正在研究各种用于存储的分布式文件系统,例如MogileFS,GlusterFS,HDFS,看起来HDFS可能是领跑者。

如果你之前已经建立了类似的东西,请分享你的经验。

谢谢!

1 个答案:

答案 0 :(得分:4)

<强>存储

  • 您真正希望存储多少数据?除非你看几十或太太或更多,否则我会考虑更简单的事情。我自己的流媒体服务器 built a very redundant 9 TB NAS 。我查看了GlusterFS等,但选择了更简单的安排 - 分布式文件系统只是意味着我们需要超过20TB左右。
  • 你知道你的用法模式是什么样的吗?例如:对一小组文件的大多数活动比分配相当平等的活动要容易得多。

网络

  • 你说带宽不是问题。但是仍然......流媒体视频时,1 Gpbs并不是那么多。如果您可以访问10GoE网络(卡,CAT6,交换机,Internet Feed),那就太棒了。我已经完成了很多 LACP 的工作,以使我们的基础设施超越1GoE,并且希望我们从一开始就支付10GoE的前期价格。
  • 瞄准基于CDR的定价。如果您有流量,那么您的费用将为每GB便士
  • 考虑将您的服务器托管在与主要Internet Exchange相同的建筑物中。这可能会让您免费向ISP下载流量。 (好吧,不包括一次性费用。)

硬件

  • 我对FMS没有丰富的经验,但确实拥有我们自己的专有流媒体服务器和Wowza实时流媒体的经验。每个CPU有6个内核的现代双插槽服务器可以使10GoE NIC饱和,具体取决于服务器软件。
  • 使用高NIC。它们并不贵。

服务器软件

  • 我强烈建议使用基于Linux的系统* nix加入网络相关的东西。
  • 如果所有流都是按需提供的,并且您确实希望最大限度地提高效率,那么请考虑使用mod_264_streaming运行lighttpd并执行“HTTP伪流式传输”。
  • 还有一些其他奇特的选项,如Erlyvideo,一个基于Erlang的流媒体服务器。它似乎是一个很有前途的平台,可以从更少的硬件中获得更多的流。
  • 进行适当的负载测试以验证您的服务器和操作系统配置。所有这些东西都有很多默认值可能会人为地限制你的输出。
  

我们扩展的方式是购买便宜的   商品硬件和(可能)   自己建立基础设施   使用各种开源   软件

我们也是。一个小团队可以用商品硬件和开源软件做什么很棒