用于交付 FLV 的托管环境

用于交付 FLV 的托管环境

在管道站点上推动大量带宽的理想硬件设置是什么?

我们拥有不断扩展的云存储,用户可以上传电影,然后我们拥有这些网络交付机器,它们将 FLV 文件缓存在本地硬盘上,并将其交付给用户。如果每台缓存机器有 SAS 8 硬盘,则可以提供 1200 mbits/s 的传输速度。这样的一台缓存机器每月花费我们 550 美元,用于 8x160gb——因此每台机器在任何给定时间只能缓存 160GB。

如果我们想要缓存超过 160gb,我们需要添加另一台机器,每月又要花费 550 美元,等等。这非常不经济,所以我想知道我们这里是否有专家可以找到更好的设置。

我一直在研究“gluster FS”,但我不确定这个东西是否可以推动大量带宽。

非常感谢任何想法。

谢谢你!

答案1

总的来说,我会质疑在这里使用复制的明智性。我会做的是……;)

  • 将文件转储到一个中央 NAS/SAN(可能在需要时进行复制)。您可以使用一些 SUperMicro 存储盒 - 2 个机架单元中的 24 x 2.5 英寸驱动器。是的,hsted/租用的服务器不适合,您需要自己托管。特殊需求 = 特殊硬件 = 不是大众托管商提供的东西。

  • 建立一个数据库,将文件动态分配到流媒体服务器组中,以允许这些服务器进行一些缓存。这些与指向组内所有服务器的单独名称服务器条目相同,只是确保不是每个服务器都必须缓存每个文件。

  • 创建负责流式传输文件组的服务器组(如前所述)

  • 让操作系统文件缓存处理其余部分。认真地讲 ;) 在这样的机器上装入最大内存,然后就可以了。

  • 顺便问一下,谁想到运行 SAS 驱动器的超级聪明主意……你检查过是否需要它们吗?提示 - 基本上是放入 SATA 驱动器……WD Velociraptors。每个驱动器 300gb,我敢打赌比您的 SAS 驱动器便宜很多。几乎一样快,运行速度为 10,000 rpm。我在数据库上使用它们,并从中获得非常经济的 IO。我认为我的 IO 要求比您的高(因为视频往往比我处理的数据大)。

基本上,您已经进入了中央存储系统有意义的范围,并且尝试使用 - 抱歉 - 普通的存储项目(一台服务器 88 个驱动器已经不令人印象深刻了)来解决这个问题。结果是硬件成本高得惊人 ;) 现在您可以选择特殊情况(看看我提供的超微产品 - 他们还有一个可容纳 48 张光盘的大型 3.5 英寸光盘笼)或特殊硬件(顺便说一句,这会花费更多)。一个不错的设置,您的前端机器没有大光盘,中央存储使用适当的高端 RAID 控制器、大量光盘和一个或几个 10gb 适配器应该不错。

忘记集群文件系统的一切 - 你想要的是可规划的东西。问题是:你需要在系统内规划带宽。除非你愿意把 10gb 交换机放到所有东西中,否则你不能有太多的交叉流量。即使这样,交叉流量也可能会杀死你。

答案2

智能缓存!

在您的情况下,网络带宽和 I/O 将是您当前的瓶颈。

如果您可以运行类似 zfs 的程序,那么您可以使用大型 SSD 作为物理驱动程序和内存之间的动态缓存。

Zfs 将管理此缓存。如果您需要 SSD 获得更好的性能,只需将它们条带化在一起即可获得更高的性能。

如果您没有 zfs,请考虑识别集群上的“热门”文件,并将它们移动到本地 SSD 或专用 RAM 磁盘上。这样,您可以使用慢速 SAN 来为文件提供服务,而热门文件将由快速 SSD/RAM 提供服务。将 SSD 视为扩展缓存。它不像 RAM 那样快,但比磁盘快得多。(能耗也更低!)。

最大限度地利用您拥有的服务器上的物理内存,这将改善缓存。如果您走 PC 路线,我见过一些容量超过 128GB 的​​主板!:-)。

如果您继续增长,那么您的数据中心的 IP 传输很快就会超出其承载能力。如果您的用户分布在各地,那么请考虑将基础设施放在离用户更近的地方。例如,欧洲用户将被引导至欧洲的数据中心。

还可以考虑使用优化的 Web 服务器来传输文件,http://nginx.org/突然想到。您仍然可以保留现有的应用程序服务器,但引导用户使用专用的视频流服务器。

Memcache 很有趣,根据你的工作负荷,这也可以提供帮助。

随着您的成长,基础设施中会出现瓶颈,请确保您拥有良好的性能/错误/安全日志。如果您知道您的基础设施在用户负载下的表现,您将能够更好地进行容量规划。在一段时间内对这些数据进行趋势分析,您将能够向管理层展示为什么您需要新的硬件 x 来解决瓶颈 y。

如果您不具备完成所有这些工作的内部技能,那么可以考虑内容交付网络,他们的基础设施经过调整,可以完成这些工作。您只需付费即可使用!

一旦将服务器升级到多个 10Gbit 以太网,您就会发现遇到其他瓶颈,即机器的实际系统总线 :-)。

答案3

我推荐使用 ZFS 和 SSD 缓存驱动器 - 效果很好。还可以最大程度地利用内存。顺便说一句,基于 OpenSolaris 的 ZFS 实现并不那么可靠。

答案4

抱歉,这不是你想要的答案。我专门从事 IP 视频制作,我曾构建过一些最大的 VoD 系统,而你现在所做的对我来说似乎是巨大的浪费,有太多问题,我不知道从哪里开始。

我的建议是,您坐下来,弄清楚您的客户是谁、在哪里、您想要为他们提供什么级别的服务、您的资产数据集和周转率是多少、您将如何获取和交付您的目录、您将如何处理您正在做的事情的交易方面,然后再重新审视您的整个部署设计。

正如我所说,很抱歉持消极态度,但我所能推荐的任何其他东西都只不过是解决更大问题的小药膏。

相关内容