Websites vs Cloud Services - OLMUG

54
Windows Phone & Windows 8 mobile apps developers Contact: Bartosz Zaremba, Backend developer [email protected], [email protected] @art_base

description

Krótkie podsumowanie i porównanie dwóch usług w Azure : Websites i Cloud Services.

Transcript of Websites vs Cloud Services - OLMUG

Page 1: Websites vs Cloud Services - OLMUG

Windows Phone & Windows 8 mobile apps developers

Contact:

Bartosz Zaremba, Backend developer

[email protected],

[email protected]

@art_base

Page 2: Websites vs Cloud Services - OLMUG

WEBSITES VS CLOUD SERVICES

Co warto wybrać kiedy chcemy mieć stronę internetową ASP.NET MVC w chmurze Azure?

Page 3: Websites vs Cloud Services - OLMUG

WEBSITES VS CLOUD SERVICES

Co warto wybrać kiedy chcemy mieć stronę aplikacje internetową ASP.NET MVC w chmurze Azure?

Page 4: Websites vs Cloud Services - OLMUG

AGENDA

1• Czym jest chmura?

2

• Web Sites• Cloud Services

3• Krótko o wspólnych cechach i nie tylko

4• Podsumowanie

5• Dodatek

Page 5: Websites vs Cloud Services - OLMUG

Czym jest chmura?

Pożycz WykorzystajZapłać

Page 6: Websites vs Cloud Services - OLMUG

CHMURA OBLICZENIOWA

Software-as-a-Service

korzystaj

SaaSPlatform-as-a-Service

buduj

PaaSInfrastructure-as-a-Service

wynajmuj

IaaS

Page 7: Websites vs Cloud Services - OLMUG

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

Page 8: Websites vs Cloud Services - OLMUG

Windows Azure Web Sites pełny power na stronie web w sekunde

Page 9: Websites vs Cloud Services - OLMUG

WINDOWS AZURE WEB SITES

code smart go livestart simple

Page 10: Websites vs Cloud Services - OLMUG

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

Page 11: Websites vs Cloud Services - OLMUG

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)

Page 12: Websites vs Cloud Services - OLMUG

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

Page 13: Websites vs Cloud Services - OLMUG

HELLO WORLDDemo

Page 14: Websites vs Cloud Services - OLMUG

WSPARCIE PODCZAS OPERACJI PUBLIKACJI

FTP:// TFS WEBDEPLOY

DROPBOX

Page 15: Websites vs Cloud Services - OLMUG

DEPLOYMENTDemo

Page 16: Websites vs Cloud Services - OLMUG

WSPARCIE DLA FRAMEWORKÓW WEBOWYCH

lub jakikolwiek dostosowany FastCGI Handler

Page 17: Websites vs Cloud Services - OLMUG

WINDOWS AZURE WEB APP GALLERY

Gotowe do użyciaOpen Source Aplikacje Web, Frameworki, i Szablony

Page 18: Websites vs Cloud Services - OLMUG

WORDPRESS Demo

Page 19: Websites vs Cloud Services - OLMUG

SCALEFree

Shared

Standard

Wiele aplikacji na serwerze. Dzienny limit

Dedykowana VM. Żadnych limitów

Wiele aplikacji na serwerze. Dzienny limit

Page 20: Websites vs Cloud Services - OLMUG

standard

STANDARD INSTANCE

:-)

cpu utilization

AUTO-SCALING

STANDARD INSTANCE

:-)

STANDARD INSTANCE

:-)

Page 21: Websites vs Cloud Services - OLMUG

AUTO-SKALOWANIEDemo

Page 22: Websites vs Cloud Services - OLMUG

DIAGNOSTICS & MONITORING

HTTP Logs Error LogsPORTAL

MONITORING

NEW RELIC

LOG STREAMIN

G

Page 23: Websites vs Cloud Services - OLMUG

DIAGNOSTYKA & LOGOWANIE Demo

Page 24: Websites vs Cloud Services - OLMUG

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ą.

Page 25: Websites vs Cloud Services - OLMUG

CLOUD SERVICE

Page 26: Websites vs Cloud Services - OLMUG

DEMO Demo

Page 27: Websites vs Cloud Services - OLMUG

CZYM JEST CLOUD SERVICE?Jakie mamy role?

Web Role Worker Role

Page 28: Websites vs Cloud Services - OLMUG

CO MOŻNA URUCHOMIĆ?

Page 29: Websites vs Cloud Services - OLMUG

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.

Page 30: Websites vs Cloud Services - OLMUG

Usterki

99.95% Gwarancja działaniaWymagane 2 bądź więcej instancje na role

Page 31: Websites vs Cloud Services - OLMUG

Dziedziczone po RoleEntryPoint

OnStart() Run() OnStop()

Model programowania „Role”

Page 32: Websites vs Cloud Services - OLMUG

Cykl życia „Role”

Wszystkie role mogą rozszerzyć RoleEntryPoint

Roles raportują status przez RoleEnvironment

StatusCheck

StatusCheck

StatusCheck

Stopping

METHODS EVENTS STATUS

Page 33: Websites vs Cloud Services - OLMUG

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.

Page 34: Websites vs Cloud Services - OLMUG

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

Page 35: Websites vs Cloud Services - OLMUG

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)

Page 36: Websites vs Cloud Services - OLMUG

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.

Page 37: Websites vs Cloud Services - OLMUG

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

Page 38: Websites vs Cloud Services - OLMUG

DEMODemo

Page 39: Websites vs Cloud Services - OLMUG

WSPÓLNE

Page 40: Websites vs Cloud Services - OLMUG

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

Page 41: Websites vs Cloud Services - OLMUG

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

Page 42: Websites vs Cloud Services - OLMUG

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

Page 43: Websites vs Cloud Services - OLMUG

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

Page 44: Websites vs Cloud Services - OLMUG

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

Page 45: Websites vs Cloud Services - OLMUG

WIELE BLOKÓW USŁUG

StorageBig data

Caching

CDN

Database

Identity

Media

Messaging

Networking

Traffic

Page 46: Websites vs Cloud Services - OLMUG

WINDOWS AZURE STORE

Odkryć, Zakupić & Zaopatrzyć się w dobrej jakość usługi

Discover, Purchase & Provision PremiumServices

Page 47: Websites vs Cloud Services - OLMUG

PODSUMOWANIE

Page 48: Websites vs Cloud Services - OLMUG

ZARZĄDZANIE VS KONTROLA

Page 49: Websites vs Cloud Services - OLMUG

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

Page 50: Websites vs Cloud Services - OLMUG

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

Page 51: Websites vs Cloud Services - OLMUG

WINDOWS AZURE SERVICE ARCHITECTURE

Windows Azure Data Center

Storage

Page 52: Websites vs Cloud Services - OLMUG

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

Page 53: Websites vs Cloud Services - OLMUG

PYTANIA

Page 54: Websites vs Cloud Services - OLMUG

Ź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