0

Currently I have two servers which are named (ProcessServer1 and ProcessServer2) that will do nothing but convert videos that users upload, into flv or mp4 format. The conversion settings are 512k although I don't think this matters for what I'm asking since I believe it has to do with file sizes and input/output operations but we'll get to that in a minute. These two servers will then upload the videos to the video storage server (StorageServer1). StorageServer1's role is nothing but store the video files.

MainServer1 is going to host the website (currently using a modified version of opensource ClipBucket). It will be running on CentOS6.2 64bit and will have the following installed on it: mysql, httpd, and the ClipBucket website software. This server will have all of this installed on a single RAID 1 SSD drive array (two drives). It will be responsible for hosting the entire website with the thumbnail folder, mysql, etc. I mention this because lots of visitors equals lots of mysql requests as well as lots of thumbnails being displayed every time a webpage loads and an SSD should help that significantly. Again, all of this will be on that RAID 1 SSD drive array.

When a user uploads a video, MainServer1 redirects that request to ProcessServer1 or ProcessServer2 depending on which server is the least busy. Then those servers will upload the processed video to StorageServer1. StorageServer1 will have a 1Gbps bandwidth connection/port.

When a user of my website starts watching a video, the entire page loads from MainServer1 but the video gets pulled from StorageServer1 technically. I need to make sure that StorageServer1 can handle a few thousand simultaneous users who are watching different videos or even the same videos. In other words, we're not technically streaming a single video to a bunch of people at the same time such as a television or live stream etc. The users are watching the videos the same way they would on youtube or breake or any other video sharing website. Same principal here.

I need to get your opinion on RAID and hard drive configuration for StorageServer1. Right now I have 8 2TB SATA 7200rpm drives that I was planning on running in RAID10. I am curious how IOPS will be of concern since for the most part when someone watches a video they are basically downloading the video and if that video is several MBs to possible a few hundred MBs then how much does IOPS become an issue. I know that if this was a sql server where lots and lots of tiny read/writes are happening then IOPS is a big factor but is it still a big factor in my scenario?

Assuming that I am able to use all 1Gbps port speed and assuming I have a few thousand simultaneous users watching videos, does the above RAID 10 thoughts of mine sound ok or do you think I need more drives for more IOPS?

Thanks in advance.

Joe
  • 1
  • 1
  • possible duplicate of [Software/hardware to build video streaming server?](http://serverfault.com/questions/30847/software-hardware-to-build-video-streaming-server) – Tom O'Connor Jul 25 '12 at 14:19

1 Answers1

1

When you typed in your question title it threw up a bunch of previous answers directly underneath in an area called "Questions that may already have your answer", many of those addressed your question, that previous question search is there to try to stop us from getting the same questions all the time. This mechanism doesn't work when they're ignored however.

Either way I build large Video on Demand systems and if you take a look at THIS subset of my previous answers I think you may find enough of what you're looking for.

Chopper3
  • 100,240
  • 9
  • 106
  • 238