首先,如果这个问题变得有点分散,我感到抱歉,这个问题对我来说已经有一段时间了。
这是一个小小的背景:我运营一个教育网站,提供在线课程video点播。 4年来,我们使用全球6台Wowza专用服务器托pipe了我们所有的媒体,以提供我们的媒体。 我们的成本是每月1500美元左右。
为了提高服务质量,我们招募了一个性能良好的CDN,但是现在我们的托pipe成本已经高达6000美元/月了,我们想回到自己托pipe98%的水平,只把CDN外包给我们最后的手段与翻转脚本。
当我们有我们自己的专用服务器时,我们通常会使用2X四核2.66GHz瓦特/ 16GB内存和2个SSD的RAID0。 尽pipe我们从同一个托pipe公司订购了同样的东西,但是在世界的不同地区,我们会注意到很大的性能差异,这似乎是在硬件上,而不是在networking层面。
我们达成了一个价格合理的协议,但是现在我一直在试图确定如何为我所需要的最佳性能做决定。
================================
假设我想要最好的数据传输/寻找时间来提供最高数量的同步video? 如果我一次有1000个在线用户,他们最多可以同时打开250-400个单独的video文件。 我意识到我可以获得8个SSD SAS驱动器,并将它们放入RAID中,但处理器或RAM如何?
在ebay上看,我看到的东西,如:
PowerEdge R810 1U Server (4X) 1.87GHz Eight-Core Xeon L7555 192GB RAM POWEREDGE R810 SERVER FOUR X7550 2.0GHZ 96GB
从处理器的angular度来看,我可以find8MB-30MB三级caching,但这真的很重要吗? 我最好用2个四核处理器,还是我需要4个8核心才能真正发挥出最大的功效呢?
我从软件供应商那里了解到,当打开多个文件时,更多的内存更好,但是总的来说,他们拒绝给出更多关于什么types的硬件实际上会给你一个特定结果的细节。 他们只是说:
http://www.wowza.com/products/streaming-engine/specifications High-load recommended production hardware CPU: Dual Quad-Core or a single Hex-Core, 3.00 GHz or better RAM: 16-32GB Disk: 2 or more in RAID 0 (striping) Network: 10Gbps Ethernet
这很好,但是没有说明这个configuration会带来什么结果。 我通常在任何一天都需要能够在一整天的时间里stream出15000个video,同时有1500个峰值。 从带宽的angular度来看,如果硬件能跟上,我可以通过一个互联网连接来实现。 我知道有多个地点是有好处的,但是如果我能找出硬件问题,我仍然可以节省5万美元/年。
最后,我想我想知道如果我有一个超高性能的RAID,接下来我需要担心的是什么? 我应该只关注时钟速度,L3caching,RAM吗?
=================================
我购买了一台新的服务器,并且正在学习关于RAIDconfiguration和性能的更多信息,如果你想跟随,你可以在这里看到下一部分的故事:
新的RAID hdparm慢
我不认为可以这样说:购买X,安装Y,你的问题将立即解决。 这需要经过几次迭代才能完成,而且当你不可避免地出现瓶颈时,你需要做更多的工作。 大多数情况下,我将避免推荐特定的硬件,因为在点击提交button时,这些硬件会过期。
因此,由于我们没有关于瓶颈的数据,所以假设这是一个绿地项目。 这是我将如何处理它: