PDA

Bekijk Volledige Versie : Welke capaciteit nodig voor VPS streamserver (ongeveer 100Mbit verkeer)?



aristo
08/01/10, 18:12
LS

Plan is om VPS te gebruiken als streamserver.
Mijn vraag is welke specs daarvoor nodig zijn, indie het aantal streams flink oploopt en er pakweg 100Mbit dataverkeer is.
We hebben ervaring met kleinere streamservers en dan lukt dat prima met eigenlijk minimale waarden. (denk aan VPS op XenServer , centos, 0,5 gB RAM, en 10-20 gB harddisk)

Ik hoor graag. Vast bedankt, Eef

rensariens
08/01/10, 18:15
Ik denk dat het altijd een kwestie van proberen blijft. Als je met kleine streams 512mb gebruikt, ga dan voor 1GB. Mooie van een VPS is nu juist dat je gemakkelijk kunt upgraden. :) Je zou Randy even kunnen vragen, als ik het goed heb doet hij veel streaming dingen.

aristo
08/01/10, 20:04
Je zou Randy even kunnen vragen, als ik het goed heb doet hij veel streaming dingen.

Randy zijn adviezen stel ik zeker op prijs. Hij is immers van alle markten thuis.

Vr.gr Eef

Lite-On
08/01/10, 22:45
Het zal eerder te maken hebben met wat voor streams, en op welke bitrate/codec deze uitgezonden worden.
Shoutcast bijvoorbeeld heeft vrijwel niks nodig (ik meen 4KB ram per luisteraar).
Video streaming zal een heel ander verhaal zijn.

Tim.Bracquez
08/01/10, 23:09
Mooie van een VPS is nu juist dat je gemakkelijk kunt upgraden.
Hangt af van welke virtualisatie technologie, een reboot kan nodig zijn dus voor een 24/7 stream niet altijd even handig, dus altijd leuk als je goed weet te beginnen(bespaard mogelijk een rebootje wat voorheen al bepaald kon worden)

Het RAM gebruik voor een audio stream is bijzonder weinig zoals hierboven al vermeld.

Vergeet ook niet dat het netwerk tot aan je VPS node 1Gbit zal moeten zijn. Mee rekening houden dat andere VPSen dan niet het netwerk verkeer storen.

MMaI
09/01/10, 00:04
met streaming ligt het allemaal aan de waardes die je invult voor de bufferwaarde, en de samenstelling van je content.

Als je voor audio streaming namelijk een standaard waarde invult voor buffering, dan verbruik je per gebruiker inderdaad rond de 4kb per gebruiker (standaard waarde meestal tussen 1 en 2 seconden). Als je dezelfde standaardwaarde laat staan voor video, dan heb je het al direct over 1-1.5Mb per gebruiker (standaard streams tussen 512kb/sec en 768kb/sec).

Verder is het bij video (en audio in mindere mate) ook belangrijk hoe je het wil streamen, als je namelijk realtime conversie moet doen vanuit je bron (bron streamt naar server, server streamt verder) dan kost dat stevig cpu op je server als de instellingen van de streams afwijken. Verder is het scrubben (op willekeurige plekken klikken in je video) de grootste belasting voor je server. Hiervoor zijn diverse opties in te denken. De eerste is progressief streamen (eigenlijk geen stream, maar gewoon downloaden). De tweede oplossing is h264 scrubbing module voor apache (http://h264.code-shop.com/trac/wiki/Mod-H264-Streaming-Apache-Version2) demo hier: (http://h264.code-shop.com:82/demo/apache/testlist.html).

De server belasting van deze module neemt vooral toe bij het scrubben van video, door het verhoogde aantal IO en RAM acties wat hierbij hoort (zoeken in mp4 file en buffer opnieuw in geheugen laden).

Zonder verdere info van jouw kant (aantal users, welk type content etc.) kun je dan ook nooit zeggen welke hw specs er nodig zijn voor het aanbieden van streams. Mocht je in-house echt geen ervaring of kennis hebben, dan lijkt het me verstandiger om de streaming uit te besteden, en alleen de platform hosting op je te nemen (simpelweg verwijzingen maken naar de streambestanden, denk aan wat akamai bijvoorbeeld aanbied in het groot).

aristo
09/01/10, 01:12
Shoutcast bijvoorbeeld heeft vrijwel niks nodig (ik meen 4KB ram per luisteraar).
Video streaming zal een heel ander verhaal zijn.
Het gaat om audio streaming. Zal tot 128 kB per luisteraar zijn.
Die 4 kB per luisteraar is dat specifiek voor Shoutcast? Of geldt dat voor andere stream-software ook?

vr.gr. Eef

aristo
09/01/10, 01:14
Vergeet ook niet dat het netwerk tot aan je VPS node 1Gbit zal moeten zijn. Mee rekening houden dat andere VPSen dan niet het netwerk verkeer storen.

Die 1 Gbit is beschikbaar en andere VPS-en hebben geen pieken in dataverkeer. Ik schat dat dat geen probleem moet geven.

Vr.gr. Eef

Tim.Bracquez
09/01/10, 07:09
Het gaat om audio streaming. Of geldt dat voor andere stream-software ook?
Welke streaming software gebruik je nu? Dan kunnen we hier even mee denken wat nodig zal zijn...

Veel zal het niet zijn als je gewone live streaming wilt, maar zoals MMaI het zegt het hangt ook af hoe je het wilt streamen.

Wordt dit live gestreamd? Of is het een on demand systeem? Of'n combinatie

aristo
09/01/10, 09:22
Welke streaming software gebruik je nu? Dan kunnen we hier even mee denken wat nodig zal zijn...

Veel zal het niet zijn als je gewone live streaming wilt, maar zoals MMaI het zegt het hangt ook af hoe je het wilt streamen.

Wordt dit live gestreamd? Of is het een on demand systeem? Of'n combinatie

Shoutcast streaming 128 kbps max streams.
Tot max. 100 Mbit
Auto DJ zal veel gebruikt worden.
On demand ook, maar schat dat niet meer dan 10% van totaal zal zijn.

vr.g. Eef

Lite-On
09/01/10, 11:16
Shoutcast streaming 128 kbps max streams.
Tot max. 100 Mbit
Auto DJ zal veel gebruikt worden.
On demand ook, maar schat dat niet meer dan 10% van totaal zal zijn.

vr.g. Eef

Ik zelf draai shoutcast + control panel op een wat oudere SUN x2100 server (AMD Opteron 146, 1,5GB ECC). Over het algemeen meer dan voldoende power beschikbaar.
Uit eigen ervaring is er ongeveer 10% CPU load per on-demand stream.
Shoutcast zelf trekt minimaal aan CPU en memory (defualt buffer instellingen). Streaming op 192Kbps en enkele honderden luisters is geen enkel probleem hier.

Echt spannende systeem specs zul je niet nodig hebben met shoutcast en default buffering. On-demand zal in iedergeval de grootste CPU load factor worden.

MMaI
09/01/10, 14:29
als je 100mbit dicht trekt met 128kb streams dan heb je het over ongeveer 725 luisteraars.
Met je genoemde configuratie moet dat geen probleem zijn.

@Lite-On, on demand streamen gebruikt juist minder cpu, omdat de bestanden al in het juiste formaat op je server aanwezig zijn, waarschijnlijk bedoel je live-streaming.

on-demand streams zijn minder cpu intensief, voor live streamen komt de situatie waarbij je in jouw vps waarschijnlijk vanaf 3-4 streams tegelijk vertragingen gaat merken. Het streamen van mp3 files die op de server zelf staan en in de juiste kwaliteit staan geeft je een minimale cpu load (on-demand). Heb je wel conversie nodig (bijvoorbeeld downconversie van je bestanden, of realtime omzetten van bronmateriaal - live) dan zal je cpu load ook omhoog gaan, maar omdat dit voor alle luisteraars maar 1x dient te gebeuren is dat een load die verwaarloosbaar is (gemiddelde mp3 kost 15-20 sec om om te zetten, als je dat dus over 3.00 uitsmeert is dat een minimale load). Wordt cpu echt je bottleneck, zorg dan dus dat alle bestanden aansluiten op je streaming instellingen, dan ben je die overhead al kwijt.

ps. ultra simpele uitleg: http://www.voorbeginners.info/webhosting/streaming-media-2.htm