Windows azure - abbattere tempi e costi di sviluppo

2,869 views

Published on

In questa sessione vedremo come utilizzare Windows Azure per velocizzare e semplificare la realizzazione di applicazioni ASP.NET. Dallo sviluppo al deploy, passando per lo storage...andremo in dettaglio su varie funzionalità che ci faranno apprezzare ancora più la piattaforma Windows Azure.

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,869
On SlideShare
0
From Embeds
0
Number of Embeds
2,290
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Windows azure - abbattere tempi e costi di sviluppo

  1. 1. Andrea Dottor – Microsoft MVP ASP.NET/IISASP.NET e Windows Azure...abbattere tempi e costi di sviluppo
  2. 2. Novitàannunciate alTechEd NA2013• News fresche • Applicate da Giugno 2013– Già online!!
  3. 3.  Le costi vengono applicati ai minutieffettivi di utilizzo e non più alle ore diutilizzo Risparmio per chi utilizzava VM per test,sviluppo, con macchine che rimangono avviateper tempi limitati Le VM spente non vengono piùconteggiate ai fini della fatturazione Fino a poco fa, si pagava anche per le VMspente. Per non pagare, si doveva cancellare laVM, e ciò richiedeva tempo ogni volta che sidoveva ricreare un ambiente completoPer Minute Billing and No Charge forStopped VMs
  4. 4. Heavily Discounted MSDN Dev/TestRates
  5. 5. MSDN Monthly Monetary Credits
  6. 6. Portal Support for Better TrackingMSDN Monetary Credit Usage
  7. 7.  No Charge for Stopped VMs Pay by the Minute Billing MSDN Use Rights now Supported onWindows Azure Heavily Discounted MSDN Dev/TestRates MSDN Monetary Credits Portal Support for Better TrackingMSDN Monetary Credit Usage SSL Support with Web SitesNovità annunciate al TechEd 2013
  8. 8. Perchéquestasessione?
  9. 9.  Windows Azure offre soluzioni chepermettono di abbattere tempi e costidi sviluppo E importante conoscere ciò che offre http://www.windowsazure.com Windows Azure non risolve tutti iproblemi, ma può essere spesso diaiuto Windows Azure
  10. 10.  Applicazioni con dati in sola lettura Catalogo prodotti Applicazioni senza base dati o servizi Giochi Utility (calcolatrice, blocco note, …) Applicazioni connesse a socialnetworkNon tutte la applicazioni sono uguali
  11. 11.  Prototipi Tempi di realizzazione brevi Abbattere i costi il più possibile Potrebbero non diventare mai progetti reali Applicazioni con tempi impossibili Troppe funzionalità Poche risorse Troppo poco tempo Piccole applicazioni Costo di mantenimento alto Infrastruttura sovradimensionataProblemi diversi in fase di sviluppo
  12. 12.  Non esiste una soluzione unica chesia applicabile a tutte le richieste A volte si deve scendere acompromessi Spostare la data di pubblicazione Rimuovere funzionalità Aggiungere DEV Appoggiarsi a componenti di terze parti … Ricordiamoci del principio KISS…e quindi?
  13. 13. Database• SQL Server sempre ed a ognicosto?….magari 
  14. 14.  Permette di salvare grosse quantità didati ad un prezzo molto basso Il prezzo è "irrisorio" se paragonato a quello diSQL Azure Si devono pensare bene le modalità diaccesso / recupero dati in quanto le"chiavi" vanno ottimizzate per questo Non è un database relazionale Non si possono eseguire query con le stesseperformance di SQL ServerWindows Azure – table storage
  15. 15.  Facile da implementare SDK completo, costantemente aggiornato, facileda utilizzare Flessibile Accessibile da ogni piattaforma (esposto tramiteservizi REST con supporto a Odata) Basso costoWindows Azure – table storage [2]
  16. 16.  URL format: Code addresses tables in an account using thisaddress format: http://<storage account>.table.core.windows.net/<table> You can address Azure tables directly using this address with the ODataprotocol. www.OData.org Storage Account: All access to Windows Azure Storage isdone through a storage account. The total size of blob, table,and queue contents in a storage account cannot exceed100TB. Table: A table is a collection of entities. Tables dont enforce aschema on entities, which means a single table can containentities that have different sets of properties. An account cancontain many tables, the size of which is only limited by the100TB storage account limit. Entity: An entity is a set of properties, similar to a databaserow. An entity can be up to 1MB in size. Properties: A property is a name-value pair. Each entity caninclude up to 252 properties to store data. Each entity alsohas 3 system properties that specify a partition key, a rowkey, and a timestamp. Entities with the same partition key canbe queried more quickly, and inserted/updated in atomicoperations. An entitys row key is its unique identifier within aTable storage in dettaglio
  17. 17.  Le classi dovranno ereditare daTableEntity Si devono valorizzare le proprietàPartitionKey e RowKey Entità con lo stesso PartitionKey vengono recuperatemolto più velocemente Il PartitionKey definisce come vengono partizionati idati Il RowKey è la chiave primaria allinterno della stessapartizione PartitionKey e RowKey devono essere una chiaveunivoca Il server gestisce in modo automatico laDa dove iniziare?
  18. 18. demo
  19. 19. Hosting• Esiste qualche hostinggratuito?– E che mi dia garanzie diqualità/prestazioni?
  20. 20.  Fino a 10 WebSite gratuiti Ottimi per applicazioni che non hannogrosse pretese Website appena avviati Applicazioni "prototipo" da far vedere al cliente Ambienti di test Blog aziendali e/o personali In caso di richiesta di maggiori risorse,è possibile passare alla modalitàShared o Reserved E possibile poi aumentare il numero di istanzeWindows Azure – WebSites
  21. 21.  Al TechEd 2013 è stata annunciato ilsupporto a SSL Deploy diretto da Visual Studio oppureda FTP oppure (vedremo in seguito) Dal portale di gestione si scarica un filecontenente tutte le informazioni per il deploy Vengono pubblicati solo i file modificatiWindows Azure – WebSites [2]
  22. 22. demo
  23. 23. Autenticazione• Come facciamo con i SocialNetwork?
  24. 24.  Permette di integrare con falicitàlautenticazione utilizzando i varisocial network Basato sulla claims-based identity WIF portato nel Cloud La parte di autenticazione vienedemandata a codice Cloud Meno codice da dover gestire Codice già funzionante e facile da integrare Richiede una minima configurazioneper lapplicazioneWindows Azure - ACS
  25. 25.  Provider di identità WS-Federation (ad es., Microsoft AD FS 2.0) Applicazione Facebook Windows Live ID Google Yahoo!Provider supportati
  26. 26. 1. Faccio un redirect verso lurl dellapropria ACS su Windows Azure2. Rimando ad una pagina in locale chesi occupa di richiamare lACS Dal portale di amministrazione è possibilescaricare una pagina html che contiene tutto ilcodice necessario3. Uso dellSDKDa dove inizire
  27. 27. demo
  28. 28. Continuousintegration
  29. 29.  E possibile impostare lapubblicazione automatica su WebSiteo Cloud Service partendo da progettihostati su GIT, TFS, Dropbox,Bitbucket, Codeplex, …. Risparmio di tempo nelle procedure di deploy Ambiente online sempre aggiornato Utile per avere un ambiente di testaggiornato con il codice presente nelcontrollo sorgentePubblicazione automatica
  30. 30.  Per associare un progetto, iniziaredalla voce di menu presente nelpannello di controllo di WindowsAzure In TFS, La pubblicazione su Windows Azure èvisibile nella sezione Builds del Team Explorer E così possibile modificarla per impostare regoledifferenti da quella di defaultDa dove cominciare
  31. 31.  Nel pannello di Windows Azure èpresente un log di tutte lepubblicazioni Ogni pubblicazione ha il dettaglio di tutto ciò cheavviene Selezionando una pubblicazioneprecedente,è possibileripubblicarlaRipubblicare una build precedente
  32. 32. demo
  33. 33. Sviluppomobile• Esiste qualcosa che permettadi facilitarmi nello sviluppo?– Storage– Autenticazione– Notifiche– …
  34. 34.  Fornisce uninfrastruttura online per losviluppo di applicazione mobile oWin8 Non è limitato ai soli ambienteMicrosoft Vengono forniti SDK e codice di esempio ancheper Android, iOS e per applicazioniHTML+JavaScript Cosa fornisce? Storage dinamico su SQL Azure Notifiche AutenticazioneWindows Azure - Mobile Services
  35. 35. demo
  36. 36. feedback10o feedback su:• http://xedotnet.org/feedback• Codice: GIU15Email: andrea@dottor.netBlog: http://blog.dottor.netTwitter: http://twitter.com/dottorfeedback

×