websites vs cloud services - olmug
DESCRIPTION
Krótkie podsumowanie i porównanie dwóch usług w Azure : Websites i Cloud Services.TRANSCRIPT
Windows Phone & Windows 8 mobile apps developers
Contact:
Bartosz Zaremba, Backend developer
@art_base
WEBSITES VS CLOUD SERVICES
Co warto wybrać kiedy chcemy mieć stronę internetową ASP.NET MVC w chmurze Azure?
WEBSITES VS CLOUD SERVICES
Co warto wybrać kiedy chcemy mieć stronę aplikacje internetową ASP.NET MVC w chmurze Azure?
AGENDA
1• Czym jest chmura?
2
• Web Sites• Cloud Services
3• Krótko o wspólnych cechach i nie tylko
4• Podsumowanie
5• Dodatek
Czym jest chmura?
Pożycz WykorzystajZapłać
CHMURA OBLICZENIOWA
Software-as-a-Service
korzystaj
SaaSPlatform-as-a-Service
buduj
PaaSInfrastructure-as-a-Service
wynajmuj
IaaS
WZORCE WYKORZYSTANIACHMURY OBLICZENIOWEJ
tMoc
oblic
zenio
wa
Czas nie aktywnośc
i
t
t
t
Włącz i wyłącz
Nagłe skoki
Moc
oblic
zenio
wa
Szybki wzrost
Moc
oblic
zenio
wa
Przewidziane wzrosty
Moc
oblic
zenio
wa
Windows Azure Web Sites pełny power na stronie web w sekunde
WINDOWS AZURE WEB SITES
code smart go livestart simple
START SIMPLEWystartuj z 10 stronami za darmo
Stwórz nową stronę w sekundę
Łatwe zarządzanie i skalowanie stron
Automatyczny load balancing i współdzielenie storagu przez instancje
Zwiększanie i zmniejszanie zarezerwowanych instancji w celu zwiększenia wydajności
CODE SMARTUżyj ASP.NET, ASP, PHP, lub Node.js
Bazy danych SQL Azure lub MySQL
Wystartuj z open source apps i frameworkami
Rozwijaj z VS i WebMatrix
Masz wsparcie narzędzi do rozwoju aplikacji webowych na wszystkich platformach (Windows, OSX, Linux)
GO LIVESzybki deployment w każdej iteracji
Integracja z narzędziami do kontroli źródeł jak Team Foundation Server (TFS) i Git
Zbieranie danych z monitorowania
Szybki dostęp do logów z żądań oraz łatwa diagnostyka
HELLO WORLDDemo
WSPARCIE PODCZAS OPERACJI PUBLIKACJI
FTP:// TFS WEBDEPLOY
DROPBOX
DEPLOYMENTDemo
WSPARCIE DLA FRAMEWORKÓW WEBOWYCH
lub jakikolwiek dostosowany FastCGI Handler
WINDOWS AZURE WEB APP GALLERY
Gotowe do użyciaOpen Source Aplikacje Web, Frameworki, i Szablony
WORDPRESS Demo
SCALEFree
Shared
Standard
Wiele aplikacji na serwerze. Dzienny limit
Dedykowana VM. Żadnych limitów
Wiele aplikacji na serwerze. Dzienny limit
standard
STANDARD INSTANCE
:-)
cpu utilization
AUTO-SCALING
STANDARD INSTANCE
:-)
STANDARD INSTANCE
:-)
AUTO-SKALOWANIEDemo
DIAGNOSTICS & MONITORING
HTTP Logs Error LogsPORTAL
MONITORING
NEW RELIC
LOG STREAMIN
G
DIAGNOSTYKA & LOGOWANIE Demo
INNE Zarządzać można od strony portalu „Azure Portal” lub linii komend
„Powershell” dla wielu popularnych frameworków
Web Sites także ma dostęp do integracji z innymi usługami Windows Azure jak SQL Database, Service Bus i Storage.
Po stworzeniu strony ty możesz tam zmigrować istniejąca stronę web lub stworzyć kompletnie nową. Nie musisz się uczyć nowego modelu lub zarządzania własną maszyną.
CLOUD SERVICE
DEMO Demo
CZYM JEST CLOUD SERVICE?Jakie mamy role?
Web Role Worker Role
CO MOŻNA URUCHOMIĆ?
Role i Instancje
Każda uruchomiona rola może być na jednej lub więcej instancjiRola na instancji ma ustawiony kod, jest skonfigurowana, ma lokalne dane i jest zdeployowana na dedykowanej VM
Rola jest zdefiniowana jako usługa hostująca.Definicja roli określa : Rozmiar VMEndpoints do komunikacjiLokalny magazyn (storage) zasobów itp.
Usterki
99.95% Gwarancja działaniaWymagane 2 bądź więcej instancje na role
Dziedziczone po RoleEntryPoint
OnStart() Run() OnStop()
Model programowania „Role”
Cykl życia „Role”
Wszystkie role mogą rozszerzyć RoleEntryPoint
Roles raportują status przez RoleEnvironment
StatusCheck
StatusCheck
StatusCheck
Stopping
METHODS EVENTS STATUS
Wzorce Worker Role
Worker Role działająca na kolejceWstawianie i odbieranie wiadomości w pętli while(true)Np. operacje w tle na obrazkach
Wsłuchiwanie się odbieranie żądańStworzenie TcpListener,WCF lub Web APINp. Uruchomienie .NET SMTP lub serwisu WCF
Worker role jako zewnętrzny procesMetoda OnStart lub Run wykonywana w Process.Start()Zadania startowana podczas instalacji lub działające w tle lub na pierwszym planieDostosowane Role Entry Point (pliki wykonywalne lub .Net assembly)Np. Uruchomienie serwera bazy danych, serwera web lub dystrybucji cache.
Web Role
Wszystkie funkcje worker roli + IIS 7, 7.5 lub IIS 8.0*ASP.NET 3.5 SP1, 4.0 or 4.5* – 64bitHostsWebforms lub MVCFastCGI aplikacje (e.g. PHP)Multiple Websites
Http(s)Web/Worker HybrydyMożna opcjonalnie implementować RoleEntryPoint *with Windows Server 2012
Paczki „Packaging” i „Config”
Windows Azure Services jest opisany przez dwa bardzo ważne artefakty:Service Definition (*.csdef)Service Configuration (*.cscfg)
Twój kod jest spakowany i skompresowany do (*.cspkg)Encrypted(Zipped(Code + *.csdef)) == *.cspkg
Windows Azure działa na (*.cspkg + *.cscfg)
Local Storage
Role instancje mają dostęp do dysków lokalnych
Ich rozmiar jest zależny od VMDane na nich są trwałe ale nia mają gwarancji, że będą cały czas trwałe.
Dobre dla cache lub plików tymczasowych.
Windows Azure Storage Drives zapewnia
gwarancje „stałości” danych na storage.
Role Instance
Windows Azure - diagnostyka
Instancja „Role” startuje
Diagnostic Monitor startuje
Monitor jest konfigurowanyZdalny w jakimkolwiek czasieConfiguracje są zapisane na storage
Monitor buforuje dane lokalnieUżytkownik może ustawić kolejkę (FIFO)
Użytkownik inicjuje transfer z storage do lokalnego bufora
DEMODemo
WSPÓLNE
Windows Azure SDKs i narzędzia
.NetVisual StudioBiblioteki klienckie dla .Net
Node.jsPowerShellNode.js dla WindowsIISNodeBiblioteki klienckie dla Node.js
JavaEclipseBiblioteki klienckie dla Java
phpCommand LineBiblioteki klienckie dla php
WINDOWS AZURE DLA .NET DEVELOPERÓW
Visual Studio 2010/2012
Project Templates
Model & Config Tooling
Package & 1 Click Deploy
Debugging Support
Storage Explorer
Server Explorer
IntelliTrace Support
Profiling Support
Rozmiary VM w Windows Azure
Extra Small
Shared 1.0 GHz 768M 20GB .02
Small 1 1.6 GHz 1.75GB 225GB .12
Medium 2 1.6 GHz 3.5GB 490GB .24
Large 4 1.6 GHz 7GB 1,000GB .48
Extra large
8 1.6 GHz 14GB 2,040GB .96
PORÓWNANIEFeature Web
SitesWeb Roles
Access to services like Service Bus, Storage, SQL Database
Yes Yes
Integrated MySQL-as-a-service support Yes Yes, but
Support for ASP.NET, classic ASP, Node.js, PHP, Python Yes Yes
Scale out to multiple instances without redeploy Yes Yes
Support for SSL Yes, but YesVisual Studio integration Yes YesDeploy code with TFS Yes YesDeploy code with GIT, FTP Yes No
Deploy code with Web Deploy Yes No, but
WebMatrix support Yes No
PORÓWNANIEFeature Web
SitesWeb Roles
Near-instant deployment Yes NoInstances share content and configuration Yes No
Scale up to larger machines without redeploy Yes No
Multiple deployment environments (production and staging)
No Yes
Network isolation with Windows Azure Virtual Network No Yes
Support for Windows Azure Traffic Manager No Yes
Support for CDN No YesRemote desk"top" access to servers No Yes
Ability to define/execute start-up tasks No Yes
WIELE BLOKÓW USŁUG
StorageBig data
Caching
CDN
Database
Identity
Media
Messaging
Networking
Traffic
WINDOWS AZURE STORE
Odkryć, Zakupić & Zaopatrzyć się w dobrej jakość usługi
Discover, Purchase & Provision PremiumServices
PODSUMOWANIE
ZARZĄDZANIE VS KONTROLA
Your Datacenter
Virtualization
O/S
Hardware
Network
Data
Applications
Firewall
Web Sites
Applications
Data
Cloud Services
Applications
Firewall Rules
Data
Virtual Network
Virtual Machines
Virtual Network
Data
Applications
Firewall Rules
O/S
Skupienie się na aplikacji
Windows Azure
Popularne aplikacje open sourceUruchomienie profesjonalnych stron przy użyciu kilku kliknięć np. WordPress, Joomla!, Drupal, DotNetNuke and Umbraco
Continuous developmentDeploy bezpośrednio z repozytorium kodu jak GIT czy TFS.
Nowoczesne aplikacje weboweIdealne jeśli twoja aplikacja składa się klienta cienkiego z skryptami oraz serwera z bazą danych.
Wykorzystywaną moc można zwiększać lub zmniejszać w zależności od wykorzystania i potrzeby.
IDEALNE SCENARIUSZE WYKORZYSTANIA
Web Sites
Aplikacje wymagające zaawansowanej administracji. Aplikacje bazujące na chmurze, wymagające dostępu administratora, zdalnego pulpitu lub dużych uprawnień.
Cloud Services
Wielowarstowe aplikacjeAplikacje bazujące na chmurze z odseparowaną logiką aplikacji wewnątrz wielowarstwowej struktury (np. caching warstw pośrednich, asynchronicznie wykonywane procesy w tle przy użyciu Web Role lub Worker Role.
Aplikacje wymagające zaawansowanego zarządzania siecią.Aplikacje bazujące na chmurze wymagające odizolowanej sieci przez użycie mechanizmów Windows Azure Connect lub Windows Azure Virtual Network
WINDOWS AZURE SERVICE ARCHITECTURE
Windows Azure Data Center
Storage
Monitoring
Monitoring is not Debugging
Instrument your application using Trace, DebugDiagnosticMonitorTraceListener
Use Diagnostics API to Configure and CollectEvent LogsPerformance CountersTrace/Debug information (logging)IIS Logs, Failed Request LogsCrash Dumps or Arbitrary files
Request data on demand or scheduledTransferred into your table and/or blob storage
PYTANIA
ŹRÓDŁA Prezentacja wykonana na podstawie informacji ze strony
http://windowsazure.com
To stworzenia prezentacji zostały wykorzystane elementy z materiałów z Training kit do Azure