0

I'm developing a website and I want to integrate a Live Web TV.

I have this dedicated server :

Quad Core Q6600
4x 2.40+ GHz
4GO RAM
1TO Disk Space
Unmetered Bandwidth
100Mbps (goes down to 10Mbps if I reach 3TO of bandwidth. Possibility to swtich to 1 Gbps if I pay more)
  • I think I will use Red5 (installation will be made by Re5 Team) because it's open source and free of charge.

  • Bitrate will be about 500kbps

I predict to have about :

  • 100 users watching my live event
  • I will proadcast a Live for Only 2 hours daily.
  • Videos on-demand should be always available for recroded events.

Can my server support this kind of activity ? Or do I need more ressources? Note that I have my customers websites hosted on this server. Do I have to make a VPS plan to the WebTV and seperate ressources ? Of course if this server supports that traffic.

I really don't want to go with company who provides this kind of services because they are too expensive.

Pierre.Vriens
  • 1,159
  • 34
  • 15
  • 19
Emanuel
  • 1
  • 1
  • 1
    Where do you do encoding? If youdont encode i think your limit is the storage ;) Palying back files is not cpu intensivve. Storing videos is gb intensive. – TomTom Apr 20 '11 at 09:22
  • TomTom, I think I will use Flash Media Encoder for that. Is it the best way ? and for the live, can this server support that (plz look at the information that I provied). Thanks :) – Emanuel Apr 20 '11 at 09:29
  • 1
    Define best way, please. The question is does it work on that? Normally no - webtv setups I know off (inlcuding one national one reachign some million people with "real tv") used separate computers. – TomTom Apr 20 '11 at 09:30

2 Answers2

4

Let's do the maths here, let's start with bandwidth;

You want 100 users watching a live 500Kbps unicast stream, that's 50Mbps - so exactly half of your 100Mbps, assuming all traffic is outgoing and there's no jitter or other traffic such as regular web hits for your landing page/catalogue etc. That's surprisingly close to the bone.

Then you want people to be able to watch recorded material too, if this is allowed to happen during live streaming this will significantly disrupt your live streaming, purely due to the cache management overhead and the effort required to record this live stream for later playback (I assume that's how you intend to do this?).

Now onto the disk, you don't mention how many people you'd like watching recorded content or the bit-rate but let's assume you're sticking by the (quite low by the way) 500Kbps rate and the 1TB comes from a consumer 7.2krpm SATA disk. Chances are that although your system will try to use what little memory is left as disk cache it will not be that successful due to the ratio of content store to cache (I always assume that cache will be 0% effective, it's a good basis to go off), so your disk has to be able to get 50KBps per user, per item of content from a disk that's likely to give you at best 20-25MBps of random read - that should be an easy 25MBps divided by 50KBps, unfortunately it's not that easy as each read is an 'IO Operation', for which those disks are good for maybe 150 per second - so at an absolutely theoretical best you could, if your users know how to make their requests in a way that serves you, support 150 simultaneous playbacks.

Now onto your CPU, while it's a 4-year old consumer CPU given the very minor job of shifting data between buses it should be up to the job, it is a consumer CPU however with few of the technologies used in Xeons to keep your server reliable but I'm again assuming this is of little concern to you right now. 4GB should again be fine, the code you'll need won't need even this and whatever left will be a poor cache in relation to content store but it should hold all your static page content so that's fine.

So in summary, you're going to be hampered by your bandwidth and your supplier's ability to ship that much traffic, even though it's quite low anyway - and your disk won't support many playback streams. Other than that you're fine.

Chopper3
  • 100,240
  • 9
  • 106
  • 238
  • Chopper; thanks a lot for all those informations. It's really very well explained. What I understand, is that my server will not support that WebTV. What do you advice me ? go with a specialist hosting campany ? who ? prices ? – Emanuel Apr 20 '11 at 09:38
  • There's no substitute for proper top-to-bottom system design, that's what you need to do. – Chopper3 Apr 20 '11 at 09:43
  • Certainly due to my bad english, I missunderstand your message. I try to reformulate my question: What should I do ? – Emanuel Apr 20 '11 at 09:45
  • hah, as soon as I saw this question I knew @Chopper3 would be in here. @Emanuel, listen to this guy and rather than trying to do it yourself you'd be better off going with a person or company who does this properly. Look at his profile (and StackOverflow Careers Profile) to get an idea. – tombull89 Apr 20 '11 at 10:12
  • Thanks :) @Chopper, can I get in touch with you (emails or Skype) ? do you have something to propose for me and at what price ? – Emanuel Apr 20 '11 at 10:32
  • No, sorry, I build >£100m consumer VoD systems with teams of hundreds, it's not appropriate sorry. – Chopper3 Apr 20 '11 at 10:41
  • Thank you :) Could you at least advice me for which campany I should looking for ? I suppose that you know what I want and as un expert of that, you can determine what I need exactly. Thank you again :) – Emanuel Apr 20 '11 at 10:49
  • 1
    Your requirement is pretty low-end to be honest, what I'd suggest you do is define your clients in terms of numbers and types, then choose your server software, then speak to whoever makes that about your clients, get them to help you as they'll know their own software scalability requirements - then go shopping for the service that delivers what they say - basically you're doing it back-to-front – Chopper3 Apr 20 '11 at 10:57
0

Amazon Web Services released released live streaming via Cloudfront yesterday; I think this is your best solution for reliability, cost and hassle. It is likely to cost you a lot less than you think- do the numbers. See below.

Dear Amazon Web Services Customer,

We're excited to announce the launch of live HTTP streaming for Amazon CloudFront, AWS's easy-to-use content delivery network.

Using Amazon CloudFront with Amazon EC2 running Adobe's Flash Media Server and Amazon Route 53 (AWS's DNS service), you can now easily and cost-effectively deliver your live video via AWS. And, we've made it simple to get started by creating an AWS CloudFormation template that handles all of the provisioning and sequencing for all the AWS resources you need for this live streaming stack.

You only pay for the AWS resources you consume, and you have full control over your live streaming origin server (Adobe's Flash Media Server running on Amazon EC2) -- so you can configure it to best work with the specific nature of your event.

The best way to get started is to follow the instructions in our live streaming tutorial. This tutorial walks you through, step by step, how to launch your live streaming event. It'll ask you to select the live streaming template, enter a few parameters about your live event in the AWS Management Console, and let CloudFormation automatically create your live streaming stack and launch your AWS resources to stream your live event.

Sincerely,

The Amazon CloudFront Team

chrism2671
  • 2,549
  • 9
  • 34
  • 45
  • This service will allow me to not use at all my server for my project ? What I mean is that I will host my pages to my server, but Live proadcasting and on-demand video will be hosted to the AWS ? – Emanuel Apr 20 '11 at 10:00
  • Yes. It is much better because you only pay for what you use; so if nobody watches, it costs you nothing. It is all very cheap anyway, much cheaper than specialist video streaming services. – chrism2671 Apr 21 '11 at 10:16