it-swarm.com.de

Bandbreitenlastige Site ... Co-Location verwenden?

Ich arbeite an einer Website, die wahrscheinlich sehr bandbreitenintensiv ist. Ein Hauptmerkmal der Site kann bei aktiver Nutzung bis zu 1 Mbit/s für eine einzelne Sitzung übertragen werden. Glücklicherweise wird die Verwendung dieser Funktion, sobald die Benutzer den neuen Spielzeugfaktor überwunden haben, wahrscheinlich 1-5% oder weniger (wahrscheinlich viel weniger) der Sitzungszeit betragen.

Es ist jedoch wahrscheinlich, dass neue Benutzer mit dieser Funktion ein gutes Stück spielen, insbesondere beim Start. Ich bin sehr besorgt über die Bandbreitennutzung.

Dies ist mehr oder weniger ein Nischenmarkt, so dass ich mich niemals auf verrückte Level wie YouTube skalieren muss. Es ist jedoch durchaus möglich, dass es sich um ein paar Terabyte pro Monat handelt.

Ist Co-Location meine beste Option? Welche günstigen Bandbreitendienste (Colocation/Hosted/Cloud/Was auch immer) gibt es?

11
darron

Eine Menge würde davon abhängen, wie viele gleichzeitige Sitzungen Sie erwarten. Wenn mehr als ein paar gleichzeitige Sitzungen wahrscheinlich sind, benötigen Sie etwas, das Ihnen eine 100-Mbit-Verbindung gewährt, 1 Gbit, wenn Sie mehr als 50 erwarten.

Es hängt auch davon ab, welche Art von Ausfallsicherheit Sie benötigen - ob Sie Verfügbarkeitsgarantien und andere SLAs und/oder Failover-Systeme haben müssen, um im Falle eines Problems die Kontrolle zu übernehmen (da das Projekt für eine kurze Ausfallzeit wichtig genug ist) peinlich zu sein), dann sind Ihre Möglichkeiten begrenzt und Ihre Kosten werden höher sein.

Wenn Sie die großen Datenmengen vom Rest der App trennen können, müssen Sie nicht alles auf eine neue Hosting-Lösung verschieben. Wenn es sich bei den Elementen mit großer Bandbreite beispielsweise um Videodateien handelt, können Sie irgendwo einen dedizierten Server mit guter Bandbreite mieten und diese darauf hosten - Sie können Server auf guten Hosts mit angemessener Bandbreite und 100 MBit + Verbindungen heutzutage überraschend günstig erhalten (ich bezahle 50 USD/Monat) Für einen kleinen Server mit einem 10-Mbit-Link, den ich bei Bedarf rund um die Uhr in beide Richtungen auslasten könnte, ist ein 100-Mbit-Link mit einem stärkeren Server nicht teuer, es sei denn, Sie benötigen eine garantierte Verfügbarkeit und andere SLAs und/oder Server Verwaltung vom Hosting-Provider). Wenn der Server nur statische Dateien bereitstellt (auch große), benötigen Sie nicht viel Rechenleistung in Bezug auf CPU und RAM, sondern nur schnelle Laufwerke und Bandbreite. Es kann sich auch lohnen, sich "Cloud" -gehostete Lösungen oder ein Content-Delivery-Netzwerk anzusehen. Diese sind möglicherweise einfacher zu skalieren, wenn Sie nicht genau wissen, wie viel Bandbreite Sie theoretisch benötigen, um eine höhere Ausfallsicherheit zu erzielen mit Entschädigung, wenn sie diese SLA nicht einhalten). Das Trennen der Bandbreiten-Hogging-Aktion auf diese Weise hat den zusätzlichen Vorteil, dass das Feature mit hoher Bandbreite nicht alle anderen Features gleichzeitig blockiert, wenn es genügend Aufmerksamkeit auf sich zieht, damit es gecrawlt wird.

6
David Spillett

Rein historisch:
In den Tagen vor Facebook-Spielen waren alle an browserbasierten MMOs im Textformat interessiert.

Ein relativ neuer war Ogame. Es war grafisch schwer und ein Kartensystem von 9 mal 999 Seiten (9 Universen mit 999 Sektoren mit Platz für jeweils 15 Planeten und jeder Planet könnte einen Mond haben).

Die Anzahl der Benutzer, die beitraten, war wahnsinnig und der Datenverkehr noch größer.

Was haben sie getan, um das Problem zu lösen? Sie haben angefangen, ein PHP -Vorlagensystem zu verwenden und den Benutzern erlaubt, die Bilder und CSS-Dateien selbst zu hosten. Alles, was Sie tun mussten, war ein Kontrollkästchen anzuklicken und den absoluten Pfad zum Basisordner einzugeben. Sie würden dies in ihrer Datenbank speichern, das HTML <base> -Element verwenden und das Vorlagensystem den URI von http: // path/to/image auf file: /// path/setzen. vorstellen

Danach könnten alle img-Links gleich bleiben. Es musste nichts heruntergeladen werden, da die Benutzer es bereits hatten. Dies bedeutet für den Benutzer ein schnelleres Laden der Seite (was bessere Produktbewertungen bedeutet) und eine geringere Bandbreitennutzung für das Unternehmen, das die Site hostet.

Und als zusätzlichen Bonus verkauften sie es als "Bilden Sie eigene Hintergründe und Bilder, sind wir nicht nette Leute, die Sie das tun lassen?"

1
KdgDev

Wir haben eine stark frequentierte Website und viele Bilder, die auf jeder Seite geladen werden. Wir haben dedizierte Server, haben jedoch beschlossen, die Bilder auf Amazon S zu stellen. Es hört sich so an, als würden Sie über Videodateien oder eine andere Art von großen Dateien sprechen, von denen ich denke, dass sie hier immer noch zutreffen. Hier sind einige Vor- und Nachteile (für uns)

Profis

  • Auf unseren Servern wird weniger Speicherplatz benötigt
  • Weniger Bandbreite für unsere Server
  • Unsere Logdateien sind deutlich kleiner
  • Wir können es einfach in Amazon CloudFront integrieren, um das Laden für Besucher noch schneller zu machen

Nachteile

  • Es kostet ein bisschen mehr. Wir könnten ein wenig Geld sparen, indem wir es auf unseren eigenen Servern haben
  • Weniger Kontrolle über sie (Amazon) geht unter ... Zum Glück gehen sie nicht wirklich unter. :)

Andere Gedanken

Wenn es sich nicht um Mediendateien oder große Dateidownloads handelt, über die Sie sprechen, ist meine Antwort und einige der anderen möglicherweise nicht sinnvoll. Geben Sie uns weitere Details und wir werden unser Bestes tun, um Ihnen zu helfen.

1
Micky McQuade

Ja, Sie sollten Amazon AWS verwenden.

0
user4801
0
artlung

Abhängig vom Zielstaat/Land (oder der Welt) würde ich viele Cluster ("Cloud") -Lösungen an verschiedenen Standorten verwenden (Standortnetzwerke sollten gesichtet werden ;-)). Auf der einen Seite haben Sie die volle Kontrolle über Ihr CDN, auf der anderen Seite haben Sie eine Menge zu tun (z. B. Überwachung, Pflege der Soft- und Hardware-Infrastruktur und vieles mehr).

Also "verwaltete" Lösungen wie AWS oder so. Es gibt viele CDN/Cloud-Anbieter, die eine Vielzahl von Funktionen anbieten.

OFFTOPIC: Schau dir Puppet an [1] :-)

[1] http://www.puppetlabs.com/

0
fwaechter