Nie mogę mówić w przypadku instancji systemu Windows, ale założę, że ich podstawowe cechy są dość podobne do instancji systemu Linux.
Szacowane wykorzystanie przepustowości wynosi 100 jednoczesnych pobrań wideo (nie jestem pewien, czy masz na myśli pobranie pliku czy przesyłanie strumieniowe wideo - założę to drugie). Jeśli weźmiemy prędkość transmisji 512 kb / s, potrzebujesz około 51 Mb / s lub 6,5 MB / s.
Instancje EC2 różnią się wydajnością we / wy (która obejmuje przepustowość). Istnieją 3 poziomy wydajności We / Wy: niski, umiarkowany i wysoki. Należy jednak pamiętać, że dyskowe operacje we / wy (tj. Z woluminów EBS) również zależą od przepustowości. Można naprawdę rozważyć szerokość pasma tylko w sieci EC2 (ponieważ będzie ona całkowicie zmienna przez Internet).
Niektóre typowe liczby do kwantyfikacji „niskiej”, „średniej” i „wysokiej” (różne źródła podają różne liczby dla wartości teoretycznych, więc mogą nie być całkowicie dokładne).
Wysoka:
Teoretyczna: 1 Gb / s = 125 MB / s; Realistyczny ( źródło ): 750 Mb / s = 95 MB / s
Umiarkowany:
Teoretyczny: 250 Mb / s; Realistyczny ( źródło, p57 ): 80 Mb / s = 10 MB / s
Niski:
Teoretyczny: 100 Mb / s; Realistyczne (z moich własnych testów): 10-15 Mb / s = 1-2 MB / s
(W rzeczywistości istnieje również „bardzo wysoki” poziom (teoretycznie 10 Gb / s), ale dotyczy to tylko instancji obliczeń klastrowych).
Kolejnym punktem odniesienia jest stopień zmienności. W mniejszych instancjach występuje większa zmienność wydajności, ponieważ fizyczne komponenty są współużytkowane przez więcej maszyn wirtualnych. Niezależnie od tego możesz spodziewać się około +/- 20% zmienności swojej wydajności (źródła: 1 , 2 , 3 ). W twoim przypadku (zgodnie z założeniami / obliczeniami u góry) może być potrzebna maksymalna przepustowość 13 MB / s (podwójne 6,5 MB / s, ponieważ dyskowe operacje we / wy są również ograniczone przez sieć). Jeśli przenosisz mniejszą przepustowość, powinieneś być w stanie użyć instancji o „umiarkowanej” wydajności we / wy (patrz strona typów instancji), jeśli twoje obliczenia skutkują wyższym wymaganiem przepustowości, będziesz potrzebować instancji o „wysokiej” wydajności We / Wy. Zwykłe przesyłanie strumieniowe danych nie powinno być związane z procesorem ani pamięcią, ale utrzymanie 100 równoczesnych połączeń prawdopodobnie będzie wymagać co najmniej średniej instancji - a jeśli przepustowość stanowi problem, w oparciu o powyższe, duża instancja byłaby bezpieczniejsza).
Polecam przetestować uruchamiane serwery, aby sprawdzić, czy spełniają one (obliczone) potrzeby. Uruchom dwie instancje (tego samego typu) i uruchom iperf
każdą z nich, używając prywatnych adresów IP instancji - musisz otworzyć port 5001 w grupie zabezpieczeń, jeśli uruchamiasz go z ustawieniami domyślnymi). Ponadto większość testów poza siecią EC2 wykazuje wyniki w zakresie 80–130 Mb / s (duże instancje) - chociaż liczby te niekoniecznie są znaczące.
CDN byłby lepiej dostosowany do twoich potrzeb, jeśli konfiguracja na to pozwala. Wydaje się, że S3 ma limit przepustowości około 50 MB / s (przynajmniej z jednej instancji) zgodnie z tym artykułem , ale jest on wyższy niż to, czego należy wymagać (S3 nie obsługuje przesyłania strumieniowego). CloudFront będzie lepiej dostosowane do zadania (jak to jest zaprojektowany jako CDN) i obsługuje 1000Mbps = 125MB / s (domyślnie źródłowego ) z wyższej przepustowości dostępnej na żądanie i może przesyłać treści, jak również)