fengliangfei 发表于 2013-11-13 17:26

本帖最后由 fengliangfei 于 2013-11-15 11:32 编辑

如果是主要是加速的话,raid模式简易采用了raid0 ,系统单独出来,最好是加大内存容量,我也是搞视频的
其次,还要看您的视频内容,如果是热点的话,IO压力会很小,如果提供的内容多,磁盘就是瓶颈

lbseraph 发表于 2013-11-16 11:41

回复 1# rym1020

从硬件层面来看,觉得H700的缓存小了,如果可以加大和加个FAST Cache试试看。
   

rym1020 发表于 2013-11-18 00:02

花钱的解决方案当然有,比如换SSD,或单台服务器只跑500M,1G带宽就上2台服务器,等等。但是我不解的是,500Mb带宽,换算下来读取速度才62MB,6块SAS 15K的盘平均每块才跑10MB,内容还都是大文件,你们觉得这正常吗?用硬盘测试软件来测,随便单块盘都跑几十M啊(随机IO)

hijoo 发表于 2013-11-19 02:38

本帖最后由 hijoo 于 2013-11-19 02:40 编辑

我仔细看了下楼主的帖子,发现楼主的机器跟我曾经碰到的情况很像,我网吧曾经有台电影服务器,有6块硬盘,都是普通的SATA500G黑盘,接在主板自带的SATA2.0接口上,只要网吧超过20来个人同时看电影服务器就特别特别卡,卡的时候也是CPU,内存占用率都非常低,打开文件非常非常慢,我仔细计算了下,20个人同时看电影也是平均一块盘不到5个人看电影啊,就算电影文件再大也不可能卡。但我们忽略了一点极其重要的东西,假设一块盘只有一个人在看电影,则不管服务器上电影文件再大都是顺序读取,黑盘130M/S的读取速度足够应付了,假设一块硬盘有两个以上的人再看电影,他们几乎不可能同时看一个电影,此时硬盘需要同时读取两个以上的文件,则此时硬盘读取几乎100%是随机读取了,普通7200转的硬盘顶爆天90的随机IO,就算是15K盘顶爆了也是150的随机IO,设想一下,90IOPS的读取速度应付两个人同时看电影就已经看吃力了,更不要说更多的人了,所以网吧电影服务器6块盘超过20个人看电影不卡才怪。

后来我仔细请教了一些论坛上的大牛,发现这个问题其实最好的解决办法是内存缓存,RAID0随机IO的性能并没有提升,RAID0仅仅只是把连续读取的速度提高了,实际的随机IO还是无法提高,不相信可以测试,1块硬盘的4K随机性能与6块RAID0的4K随机性能几乎是一样的,为何仅测试4K随机性能呢?因为硬盘存储文件是以4K块为最小单位的,100%随机读取也是以4K块为单位的。在这种情况下哪怕RAID0 20块硬盘也是卡得要飞啊。

我建议楼主按以下步骤执行

1、首先要做的是把停用RAID0,RAID0不仅无法提升性能还会带来相当大的数据安全隐患。
2、在WINDOWS SERVER 2003上安装SuperCache软件,不管是盗版还是正版,只要能用就行,但不建议使用4.0以下版本。
3、把视频手工分类,将热门与不热门的视频分别存储在不同的硬盘里,如果条件不允许分类则跳过些步。
4、接下来要做的就是为6块硬盘分别设置不同大小的内存缓存空间,SuperCache是以分区为操作单位的,如果能执行第三步最好,内存缓存的作用非常大,如果无法执行第三步也没多大关系,我曾经4G内存,为每块硬盘设置的720M内存,每块盘的的缓存命中率已经达到20%了,虽然起不到太大作用,但已经好很多了。楼主有16G内存,拿14G做缓存,每块硬盘3.5G内存做缓存,我相信缓存的命中绝对能超过50%,这样,硬盘的负载就能轻松的减少一半,相应的,服务器的负载能力也提升了一半了。

apen 发表于 2013-11-19 08:57

实际使用中,硬盘在高并发和随机读取时,性能会下降很多。

rym1020 发表于 2013-11-20 04:04

hijoo 发表于 2013-11-19 02:38 static/image/common/back.gif
我仔细看了下楼主的帖子,发现楼主的机器跟我曾经碰到的情况很像,我网吧曾经有台电影服务器,有6块硬盘,都 ...


我等了这么久,传说中的大牛终于出现了,请允许我膜拜一下。

我就觉得那些硬盘测试软件全都不靠谱,随便一测都是上百M的读取速度。后来我换了一个工业级的测试软件,LoadRunner,配置成真实生产环境(即模拟实际有几百人同时观看不同视频的情况),测试结果确实和你说的差不多,RAID0对随机读取性能的提升非常有限,一个单盘SAS 15K可以顺畅的跑20M随机读取,跑25M有点勉强,跑到30几M的时候就会很卡(用硬盘软件测试IOPS为170左右,估计是只测了单个磁头,该硬盘有4个盘片共8个磁头,生产环境是并发IO的,所以实际会有500多IOPS,每次IO请求都是64KB,算下来最大为30多M)。然后我又测了6块SAS 15K盘组raid0,跑50M随机读取时比较顺畅,跑到60M以上就很卡了,跟我1楼说的生成环境跑500M带宽硬盘就卡的情况完全一致。也就是说,单盘跑20M顺畅,6块单盘就是120M,可是6盘raid0就只能跑60M,性能没升反降了。业内所说的raid0性能提升,我觉得根本就没有提升,所谓的提升只是多盘总的性能相对单盘的提升,比如6块盘能跑60M,当然比一块盘性能强了。

我现在正打算把raid0拆了试下,还有你说的用内存做缓存的办法也很不错,顺便问一下,你是在64位系统下用内存缓存吗?我本来之前考虑过用squid来做内存缓存,可是在32位系统下,内存+虚拟内存总和跑到3G左右 squid就挂掉了。我自己先琢磨琢磨,如果有问题希望可以有机会再向你请教,谢谢!

hijoo 发表于 2013-11-20 09:01

回复 16# rym1020

SuperCache软件是无盘网吧用得比较多的一款软件,大多是盗版,因为无盘网吧服务器绝大部分都拥有特别大的内存,如我网吧就拥有两台48G内存服务器,所以网吧用的系统必须是64位系统,SuperCache网上能找到很多盗版,有桌面版,服务器版,而且设计这么周全的软件当然有32位和64位软件之分,我个人不建议使用32位的系统,我网吧使用的是64位的WINDOWS SERVER 2008 R2,从WINDOWS SERVER 2008 R2开始就没有32位的服务器系统存在了。

SuperCache软件版本很多,网上也很多很多地方有下载,有的破解的好,有的破解的不好,仔细去试每一个版本,总能找到好的!最好的办法是去网吧论坛找一下,里面有很多SuperCache的软件,很好用的。我们网吧正在使用SuperCache 5.064位版本,这款软件对我们网吧很重要,它承担了我们网吧热门游戏的缓存,减少了网吧热门游戏95%读盘压力,是一款不可多得的软件。


另外,你所使用的Squid软件个人倒是不怎么赞同,除非是在LINUX环境下,而且你这是读盘压力,要从读盘方面解决问题,Squid只是反向代理软件,作用是用来缓存小文件及网页文件,而且你把Squid装在WINDOWS上效果则更是大打折扣了,相信我,SuperCache几乎是最完美的解决方案。

rym1020 发表于 2013-11-20 13:35

hijoo 发表于 2013-11-20 09:01 static/image/common/back.gif
回复 16# rym1020

SuperCache软件是无盘网吧用得比较多的一款软件,大多是盗版,因为无盘网吧服务器绝大 ...

我试试去,拜谢!

河南电联通信 发表于 2013-12-04 16:26

楼主什么线路呀,1G的带宽

YuTianMing 发表于 2013-12-07 16:28

上SSD可以用普通民用的,和服务器硬盘差不多成本:lol
页: 1 [2]
查看完整版本: 视频资源服务器有跑满1G带宽的吗?我的只能跑500M,不知瓶颈在哪里