2012-09-18 15 views
5

Azure wykorzystuje pojęcie elastycznego skalowania i udało mi się to osiągnąć dzięki moim ROLI dla robotników. Jednak, jeśli chodzi o moich Web Role (np MVC Aplikacje) Nie jestem pewien, co do monitorowania (lub jak), aby określić, kiedy jest to dobry czas, aby zwiększyć (lub descrease) liczbę biegania instancje. Zakładam, że muszę monitorować jeden lub wiele liczników wydajności, ale nie wiem, od czego zacząć.Definiowanie progu skalowania dla ról internetowych Azure

Czy ktoś może polecić najlepszą praktykę do oceny obciążenia instancji MVC Web Role w odniesieniu do decyzji skalowania?

Odpowiedz

4

To pytanie jest nieco otwarte, ponieważ monitorowanie jest zwykle zależne od aplikacji. Powiedziawszy to:

Zacznij od prostych pomiarów, które obejrzysz na lokalnym serwerze, reprezentując kluczowe wskaźniki wydajności dla swojej aplikacji. Na przykład: Może spojrzeć na wykorzystanie sieci. This TechNet article opisuje liczniki wydajności gromadzone przez System Center dla Windows Azure. Na przykład:

  • ASP.NET Applications Wnioski/s
  • interfejsu sieciowego Bajty
  • odebrane/s
  • Interfejs sieciowy Bajty wysłane/s
  • Procesor Procesor% całkowitego czasu
  • logiczny bezpłatny Megabajty
  • LogicalDisk% wolnej przestrzeni
  • Dostępne pamięci Megab ytes

Możesz również chcieć obejrzeć # żądań oczekujących w kolejce i ustawić czas oczekiwania.

Wykorzystanie sieci jest interesujące, ponieważ Twoja karta sieciowa zapewnia około. 100 Mb/s na rdzeń i może okazać się wąskim gardłem, nawet jeśli procesor i inne zasoby nie są w pełni wykorzystane. Być może trzeba skalować do większej liczby instancji, aby obsłużyć scenariusze o dużej przepustowości.

Ponadto: Zwykle przykładam mniejszą wagę do wykorzystania procesora, mimo że jest on łatwy do zmierzenia (i tak często pojawia się w przykładach). Uruchamianie procesora o zbliżonej pojemności jest zwykle dobrą rzeczą, ponieważ zazwyczaj za to płacisz i równie dobrze możesz wykorzystać jak najwięcej.

Jeśli chodzi o zmniejszenie: Należy to potraktować nieco ostrożniej. Komputacja systemu Windows Azure jest rozliczana według godziny. Jeśli, powiedzmy, wyskalujesz do dodatkowej instancji o 11:50 i ponownie zmienisz na 12:10, właśnie wykonałeś dwie cpu-godziny. Ponadto: Nie chcesz skalować, a następnie podjąć nowe pomiary i zdecydować, że możesz teraz ponownie skalować (skutecznie tworząc stały puls dodawania i zmniejszania instancji). Aby ułatwić sobie pracę, weź pod uwagę blok aplikacji Autoskalowanie (WASABi) znajdujący się w Enterprise Library. To ma wszystkie zasady skalowane (takie jak te, o których wspomniałem) i jest bardzo proste w użyciu.

+0

Dodając do doskonałych komentarzy Davida, rozważ także korzystanie z automatycznych skalowań/usług monitorowania, takich jak AzureWatch @ http://www.paraleap.com Korzystając z historycznych wykresów, można zobaczyć, które dane z listy, o której wspomniał David, są zestresowane w okresach wysokie obciążenie - w ten sposób można tworzyć własne reguły skalowania – Igorek

Powiązane problemy