SlideShare a Scribd company logo
Deploying ASP.NET and MVC
applications to Azure

Glyn Darkin, Solutions Architect
18/04/2013

Our Awards:
What should you be mindful of as a developer if you are
considering Azure as a hosting platform?
Outside the scope of this discussion

•

Building for the Cloud

•

Cloud Service Worker Roles

•

Big Data

•

Mobile Services
Microsoft Azure for ASP.Net

SaaS

Websites

Media

Add-Ons

PaaS

Cloud
Services

Service
Bus

Distributed
Cache

IaaS

VMs

Storage

Network

Hyper-V
Azure Website vs. Cloud Service Web Role
Comparison Matrix
Feature
Access to services like Caching, Service Bus, Storage, SQL Azure Database
Support for ASP.NET, classic ASP, Node.js, PHP
Shared content and configuration
Deploy code with GIT, FTP
Near-instant deployment
Multiple deployment environments (production and staging)
Network isolation
Remote desktop access to servers
Ability to run programs with elevated permissions
Ability to define/execute start-up tasks
Ability to use unsupported frameworks or libraries
Support for Windows Azure Connect/ Windows Azure Network

Reference MSDN Blog

Web Sites

Web Roles

Yes

Yes

Yes

Yes

Yes

No

Yes

No

Yes

No

No

Yes

No

Yes

No

Yes

No

Yes

No

Yes

No

Yes

No

Yes
Is Azure the only PaaS that can host ASP.NET?

•

There will be others

•

It’s a race to the bottom

•

Our Solutions should be portable
Websites
Plain Vanilla Website
•

Replicates a Shared Hosting Platform but with elastic scalability

•

Can deploy a plain vanilla ASP.NET website

•

No SDK dependencies

•

No IDE dependencies

•

You can deploy your site to other hosting providers
– AWS, AppHarbour, Rackspace

•

10 free sites with the domain http://seotools.azurewebsites.net

•

Entity framework is fully supported with migrations
Cloud Service
Web Role
•

1 Cloud Service represents a single virtual machine

•

Part of a Cloud Solution

•

Requires the Azure SDK & tools to be installed

•

Uses a VIP to switch between a Staging & Production instance
–

•

Your code needs to reference the Azure SDK
–

•

Staging DNS creation & resolution can be SLOW

Therefore your product is not portable

Local development emulator
–
–

Learn to hack using shared resources

–
•

Very slow code, test, debug cycle

Is not the same as Azure, there are differences so be warned!!!!

No local disk access
Things you need to keep in mind
Part 1
•

You need to use the Session State provider for Windows Azure Caching
–

•

You don’t have write access to the file system
–

•

TempData uses Session State

You will need to store uploaded files in either Blob storage or SQL

You are running behind a load balancer
–

Requests that last longer than 60secs are killed
Things to keep in mind
Part 2
•

There is no SMTP server in Azure
–
–

•

User a Service link SendGrid or MailGun
User Message Bus to send message on premise and email from there

Logging/Trace output
–

Websites: Tracing output is stored against the website on disk & can be accessed via FTP
•

–

Cloud: Tracing has to be coded & configured & is stored in Table Storage
•

•

Or Streamed into Visual Studio Output Window!!!

It can be queried in Visual Studio

Configuration
–
–

•

Websites: Web.config with transformations
Cloud: ServiceDefinition.csdef and ServiceConfiguration.environment.cscfg

Images
–

Push your images to the Azure CDN
Deployment

Website

Cloud Service

Direct from TFS

Yes

Yes

Git, Mercurial, FTP

Yes

No

MSBuild, Powershell

Yes

Yes

Visual Studio*

Yes

Yes

Deployment Pipeline

No

Yes

* You should never be deploying from Visual Studio
Demo
The default MVC website
•

Windows Azure Website
– http://version1.azurewebsites.net/

•

Windows Azure Cloud Service
– http://version2.cloudapp.net/
Comparison of the file structures
Windows Azure SQL
Same Same but different
•

Fully managed database environment

•

Not all T-SQL supported in Azure

•

SQL Management Studio not fully supported

•

SQL Server replication not supported

•

Backup strategy is a little different – SYNC instead

•

Full-Text Search not supported

•

Full list of unsupported features

•

If you want to scale your database then KISS

•

BCP from the command line is fastest way to get all your data in

•

MS SQL Server Migration Wizard - http://sqlazuremw.codeplex.com/

http://msdn.microsoft.com/en-us/library/windowsazure/ff394115.aspx
Conclusion
Recommendations
•

Websites uses everything you already know

•

CloudServices you have to learn new stuff

•

Start with Websites and migrate to a Cloud Service when you need to

•

Keep in mind that Azure is a moving target

•

Windows Azure SQL requires a very simple approach
– Great for developers, not so much for the SQL DBA

•

You can always just spin up a VM for a legacy app
Q&A

&
Links

•

Azure Storage Explorer
– Blob, Table, Queue

•

CloudBerry Storage Explorer
– Blob with Sync

More Related Content

What's hot

Migrate an Existing Application to Microsoft Azure
Migrate an Existing Application to Microsoft AzureMigrate an Existing Application to Microsoft Azure
Migrate an Existing Application to Microsoft AzureChris Dufour
 
Microsoft Azure Platform-as-a-Service (PaaS)
Microsoft Azure Platform-as-a-Service (PaaS)Microsoft Azure Platform-as-a-Service (PaaS)
Microsoft Azure Platform-as-a-Service (PaaS)Chris Dufour
 
Introduction of Windows azure and overview
Introduction of Windows azure and overviewIntroduction of Windows azure and overview
Introduction of Windows azure and overviewVishal Tandel
 
Microsoft SQL Licensing Workshop - Software ONE
Microsoft SQL Licensing Workshop - Software ONEMicrosoft SQL Licensing Workshop - Software ONE
Microsoft SQL Licensing Workshop - Software ONEDigicomp Academy AG
 
Cloud computing and the Windows Azure Services Platform (KU Leuven)
Cloud computing and the Windows Azure Services Platform (KU Leuven)Cloud computing and the Windows Azure Services Platform (KU Leuven)
Cloud computing and the Windows Azure Services Platform (KU Leuven)Maarten Balliauw
 
The Basics of Getting Started With Microsoft Azure
The Basics of Getting Started With Microsoft AzureThe Basics of Getting Started With Microsoft Azure
The Basics of Getting Started With Microsoft AzureMicrosoft Azure
 
Creation of cloud application using microsoft azure by vaishali sahare [katkar]
Creation of cloud application using microsoft azure by vaishali sahare [katkar]Creation of cloud application using microsoft azure by vaishali sahare [katkar]
Creation of cloud application using microsoft azure by vaishali sahare [katkar]vaishalisahare123
 
Get Started With Microsoft Azure Cloud Service
Get Started With Microsoft Azure Cloud ServiceGet Started With Microsoft Azure Cloud Service
Get Started With Microsoft Azure Cloud ServiceJayant Chauhan
 
Introduction to Microsoft Azure
Introduction to Microsoft AzureIntroduction to Microsoft Azure
Introduction to Microsoft AzureKasun Kodagoda
 
Modernize Java Apps on Microsoft Azure
Modernize Java Apps on Microsoft AzureModernize Java Apps on Microsoft Azure
Modernize Java Apps on Microsoft AzureDavid J Rosenthal
 
Introduction to Microsoft Azure
Introduction to Microsoft AzureIntroduction to Microsoft Azure
Introduction to Microsoft AzureMartyn Coupland
 
IaaS vs. PaaS: Windows Azure Compute Solutions
IaaS vs. PaaS: Windows Azure Compute SolutionsIaaS vs. PaaS: Windows Azure Compute Solutions
IaaS vs. PaaS: Windows Azure Compute SolutionsIdo Flatow
 
The Layman's Guide to Microsoft Azure
The Layman's Guide to Microsoft AzureThe Layman's Guide to Microsoft Azure
The Layman's Guide to Microsoft AzureAptera Inc
 
Introduction to Azure IaaS
Introduction to Azure IaaSIntroduction to Azure IaaS
Introduction to Azure IaaSRobert Crane
 
Cloud Computing and Microsoft Azure
Cloud Computing and Microsoft AzureCloud Computing and Microsoft Azure
Cloud Computing and Microsoft AzureSuhail Jamaldeen
 
Windows azure jump start - ppt's - 2-6-2017
Windows azure   jump start - ppt's - 2-6-2017Windows azure   jump start - ppt's - 2-6-2017
Windows azure jump start - ppt's - 2-6-2017Girish Kalamati
 

What's hot (20)

Migrate an Existing Application to Microsoft Azure
Migrate an Existing Application to Microsoft AzureMigrate an Existing Application to Microsoft Azure
Migrate an Existing Application to Microsoft Azure
 
Microsoft Azure Platform-as-a-Service (PaaS)
Microsoft Azure Platform-as-a-Service (PaaS)Microsoft Azure Platform-as-a-Service (PaaS)
Microsoft Azure Platform-as-a-Service (PaaS)
 
Introduction of Windows azure and overview
Introduction of Windows azure and overviewIntroduction of Windows azure and overview
Introduction of Windows azure and overview
 
Introduction to Microsoft Azure 101
Introduction to Microsoft Azure 101Introduction to Microsoft Azure 101
Introduction to Microsoft Azure 101
 
Introduction of microsoft azure
Introduction of microsoft azureIntroduction of microsoft azure
Introduction of microsoft azure
 
Microsoft SQL Licensing Workshop - Software ONE
Microsoft SQL Licensing Workshop - Software ONEMicrosoft SQL Licensing Workshop - Software ONE
Microsoft SQL Licensing Workshop - Software ONE
 
Cloud computing and the Windows Azure Services Platform (KU Leuven)
Cloud computing and the Windows Azure Services Platform (KU Leuven)Cloud computing and the Windows Azure Services Platform (KU Leuven)
Cloud computing and the Windows Azure Services Platform (KU Leuven)
 
The Basics of Getting Started With Microsoft Azure
The Basics of Getting Started With Microsoft AzureThe Basics of Getting Started With Microsoft Azure
The Basics of Getting Started With Microsoft Azure
 
Azure hands on lab
Azure hands on labAzure hands on lab
Azure hands on lab
 
Creation of cloud application using microsoft azure by vaishali sahare [katkar]
Creation of cloud application using microsoft azure by vaishali sahare [katkar]Creation of cloud application using microsoft azure by vaishali sahare [katkar]
Creation of cloud application using microsoft azure by vaishali sahare [katkar]
 
Get Started With Microsoft Azure Cloud Service
Get Started With Microsoft Azure Cloud ServiceGet Started With Microsoft Azure Cloud Service
Get Started With Microsoft Azure Cloud Service
 
Introduction to Microsoft Azure
Introduction to Microsoft AzureIntroduction to Microsoft Azure
Introduction to Microsoft Azure
 
Modernize Java Apps on Microsoft Azure
Modernize Java Apps on Microsoft AzureModernize Java Apps on Microsoft Azure
Modernize Java Apps on Microsoft Azure
 
Introduction to Microsoft Azure
Introduction to Microsoft AzureIntroduction to Microsoft Azure
Introduction to Microsoft Azure
 
IaaS vs. PaaS: Windows Azure Compute Solutions
IaaS vs. PaaS: Windows Azure Compute SolutionsIaaS vs. PaaS: Windows Azure Compute Solutions
IaaS vs. PaaS: Windows Azure Compute Solutions
 
Ingram Micro IaaS Playbook
Ingram Micro IaaS PlaybookIngram Micro IaaS Playbook
Ingram Micro IaaS Playbook
 
The Layman's Guide to Microsoft Azure
The Layman's Guide to Microsoft AzureThe Layman's Guide to Microsoft Azure
The Layman's Guide to Microsoft Azure
 
Introduction to Azure IaaS
Introduction to Azure IaaSIntroduction to Azure IaaS
Introduction to Azure IaaS
 
Cloud Computing and Microsoft Azure
Cloud Computing and Microsoft AzureCloud Computing and Microsoft Azure
Cloud Computing and Microsoft Azure
 
Windows azure jump start - ppt's - 2-6-2017
Windows azure   jump start - ppt's - 2-6-2017Windows azure   jump start - ppt's - 2-6-2017
Windows azure jump start - ppt's - 2-6-2017
 

Similar to Deploying asp.net and mvc applications to azure

Kudu voodoo slideshare
Kudu voodoo   slideshareKudu voodoo   slideshare
Kudu voodoo slideshareAidan Casey
 
Should I move my database to the cloud?
Should I move my database to the cloud?Should I move my database to the cloud?
Should I move my database to the cloud?James Serra
 
Integrating your on-premises Active Directory with Azure and Office 365
Integrating your on-premises Active Directory with Azure and Office 365Integrating your on-premises Active Directory with Azure and Office 365
Integrating your on-premises Active Directory with Azure and Office 365nelmedia
 
Building Azure RemoteApp - Microsoft Campus Days 2014
Building Azure RemoteApp - Microsoft Campus Days 2014Building Azure RemoteApp - Microsoft Campus Days 2014
Building Azure RemoteApp - Microsoft Campus Days 2014Morgan Simonsen
 
Migrare Applicazioni Web su Azure
Migrare Applicazioni Web su AzureMigrare Applicazioni Web su Azure
Migrare Applicazioni Web su AzureMarco Parenzan
 
Best Practices for couchDB developers on Microsoft Azure
Best Practices for couchDB developers on Microsoft AzureBest Practices for couchDB developers on Microsoft Azure
Best Practices for couchDB developers on Microsoft AzureBrian Benz
 
Implement SQL Server on an Azure VM
Implement SQL Server on an Azure VMImplement SQL Server on an Azure VM
Implement SQL Server on an Azure VMJames Serra
 
AWS Webcast - Deploying Remote Desktop Gateway on the AWS Cloud
AWS Webcast - Deploying Remote Desktop Gateway on the AWS CloudAWS Webcast - Deploying Remote Desktop Gateway on the AWS Cloud
AWS Webcast - Deploying Remote Desktop Gateway on the AWS CloudAmazon Web Services
 
Azure Databricks – Customer Experiences and Lessons Denzil Ribeiro Madhu Ganta
Azure Databricks – Customer Experiences and Lessons Denzil Ribeiro Madhu GantaAzure Databricks – Customer Experiences and Lessons Denzil Ribeiro Madhu Ganta
Azure Databricks – Customer Experiences and Lessons Denzil Ribeiro Madhu GantaDatabricks
 
Is Your Developer's Head in the Cloud? May 7 Webinar
Is Your Developer's Head in the Cloud? May 7 WebinarIs Your Developer's Head in the Cloud? May 7 Webinar
Is Your Developer's Head in the Cloud? May 7 WebinarC/D/H Technology Consultants
 
Navigating the turbulence on takeoff: Setting up SharePoint on Azure IaaS the...
Navigating the turbulence on takeoff: Setting up SharePoint on Azure IaaS the...Navigating the turbulence on takeoff: Setting up SharePoint on Azure IaaS the...
Navigating the turbulence on takeoff: Setting up SharePoint on Azure IaaS the...Jason Himmelstein
 
Migrating Customers to Microsoft Azure: Lessons Learned From the Field
Migrating Customers to Microsoft Azure: Lessons Learned From the FieldMigrating Customers to Microsoft Azure: Lessons Learned From the Field
Migrating Customers to Microsoft Azure: Lessons Learned From the FieldIdo Flatow
 
Geek Sync | Taking Your First Steps to the Cloud—Building a Hybrid Model
Geek Sync | Taking Your First Steps to the Cloud—Building a Hybrid ModelGeek Sync | Taking Your First Steps to the Cloud—Building a Hybrid Model
Geek Sync | Taking Your First Steps to the Cloud—Building a Hybrid ModelIDERA Software
 
SQL ON Azure (decision-matrix)
SQL  ON  Azure (decision-matrix)SQL  ON  Azure (decision-matrix)
SQL ON Azure (decision-matrix)PARIKSHIT SAVJANI
 
The Essentials of Building Cloud-Based Web Apps with Azure
The Essentials of Building Cloud-Based Web Apps with AzureThe Essentials of Building Cloud-Based Web Apps with Azure
The Essentials of Building Cloud-Based Web Apps with AzureIdo Flatow
 
Moving from SBS to Azure
Moving from SBS to AzureMoving from SBS to Azure
Moving from SBS to AzureRobert Crane
 
Aws Amity University Presentation Mar-10-2022
Aws Amity University Presentation Mar-10-2022Aws Amity University Presentation Mar-10-2022
Aws Amity University Presentation Mar-10-2022Varun Manik
 
What's New for the Windows Azure Developer? Lots!!
What's New for the Windows Azure Developer?  Lots!!What's New for the Windows Azure Developer?  Lots!!
What's New for the Windows Azure Developer? Lots!!Michael Collier
 

Similar to Deploying asp.net and mvc applications to azure (20)

Kudu voodoo slideshare
Kudu voodoo   slideshareKudu voodoo   slideshare
Kudu voodoo slideshare
 
Should I move my database to the cloud?
Should I move my database to the cloud?Should I move my database to the cloud?
Should I move my database to the cloud?
 
Integrating your on-premises Active Directory with Azure and Office 365
Integrating your on-premises Active Directory with Azure and Office 365Integrating your on-premises Active Directory with Azure and Office 365
Integrating your on-premises Active Directory with Azure and Office 365
 
A to z for sql azure databases
A to z for sql azure databasesA to z for sql azure databases
A to z for sql azure databases
 
Building Azure RemoteApp - Microsoft Campus Days 2014
Building Azure RemoteApp - Microsoft Campus Days 2014Building Azure RemoteApp - Microsoft Campus Days 2014
Building Azure RemoteApp - Microsoft Campus Days 2014
 
Migrare Applicazioni Web su Azure
Migrare Applicazioni Web su AzureMigrare Applicazioni Web su Azure
Migrare Applicazioni Web su Azure
 
Best Practices for couchDB developers on Microsoft Azure
Best Practices for couchDB developers on Microsoft AzureBest Practices for couchDB developers on Microsoft Azure
Best Practices for couchDB developers on Microsoft Azure
 
Implement SQL Server on an Azure VM
Implement SQL Server on an Azure VMImplement SQL Server on an Azure VM
Implement SQL Server on an Azure VM
 
AWS Webcast - Deploying Remote Desktop Gateway on the AWS Cloud
AWS Webcast - Deploying Remote Desktop Gateway on the AWS CloudAWS Webcast - Deploying Remote Desktop Gateway on the AWS Cloud
AWS Webcast - Deploying Remote Desktop Gateway on the AWS Cloud
 
Azure Databricks – Customer Experiences and Lessons Denzil Ribeiro Madhu Ganta
Azure Databricks – Customer Experiences and Lessons Denzil Ribeiro Madhu GantaAzure Databricks – Customer Experiences and Lessons Denzil Ribeiro Madhu Ganta
Azure Databricks – Customer Experiences and Lessons Denzil Ribeiro Madhu Ganta
 
Is Your Developer's Head in the Cloud? May 7 Webinar
Is Your Developer's Head in the Cloud? May 7 WebinarIs Your Developer's Head in the Cloud? May 7 Webinar
Is Your Developer's Head in the Cloud? May 7 Webinar
 
Navigating the turbulence on takeoff: Setting up SharePoint on Azure IaaS the...
Navigating the turbulence on takeoff: Setting up SharePoint on Azure IaaS the...Navigating the turbulence on takeoff: Setting up SharePoint on Azure IaaS the...
Navigating the turbulence on takeoff: Setting up SharePoint on Azure IaaS the...
 
Migrating Customers to Microsoft Azure: Lessons Learned From the Field
Migrating Customers to Microsoft Azure: Lessons Learned From the FieldMigrating Customers to Microsoft Azure: Lessons Learned From the Field
Migrating Customers to Microsoft Azure: Lessons Learned From the Field
 
Geek Sync | Taking Your First Steps to the Cloud—Building a Hybrid Model
Geek Sync | Taking Your First Steps to the Cloud—Building a Hybrid ModelGeek Sync | Taking Your First Steps to the Cloud—Building a Hybrid Model
Geek Sync | Taking Your First Steps to the Cloud—Building a Hybrid Model
 
SQL ON Azure (decision-matrix)
SQL  ON  Azure (decision-matrix)SQL  ON  Azure (decision-matrix)
SQL ON Azure (decision-matrix)
 
Global Windows Azure Bootcamp - San Diego
Global Windows Azure Bootcamp - San DiegoGlobal Windows Azure Bootcamp - San Diego
Global Windows Azure Bootcamp - San Diego
 
The Essentials of Building Cloud-Based Web Apps with Azure
The Essentials of Building Cloud-Based Web Apps with AzureThe Essentials of Building Cloud-Based Web Apps with Azure
The Essentials of Building Cloud-Based Web Apps with Azure
 
Moving from SBS to Azure
Moving from SBS to AzureMoving from SBS to Azure
Moving from SBS to Azure
 
Aws Amity University Presentation Mar-10-2022
Aws Amity University Presentation Mar-10-2022Aws Amity University Presentation Mar-10-2022
Aws Amity University Presentation Mar-10-2022
 
What's New for the Windows Azure Developer? Lots!!
What's New for the Windows Azure Developer?  Lots!!What's New for the Windows Azure Developer?  Lots!!
What's New for the Windows Azure Developer? Lots!!
 

More from Glyn Darkin

SMACIT: The technology trends driving business transformation
SMACIT: The technology trends driving business transformationSMACIT: The technology trends driving business transformation
SMACIT: The technology trends driving business transformationGlyn Darkin
 
Native vs Hybrid vs Mobile Web
Native vs Hybrid vs Mobile WebNative vs Hybrid vs Mobile Web
Native vs Hybrid vs Mobile WebGlyn Darkin
 
Mobile Opportunities
Mobile OpportunitiesMobile Opportunities
Mobile OpportunitiesGlyn Darkin
 
Business Case Canvas
Business Case CanvasBusiness Case Canvas
Business Case CanvasGlyn Darkin
 
Kick now - a Lean StartUp Machine project
Kick now - a Lean StartUp Machine projectKick now - a Lean StartUp Machine project
Kick now - a Lean StartUp Machine projectGlyn Darkin
 

More from Glyn Darkin (7)

SMACIT: The technology trends driving business transformation
SMACIT: The technology trends driving business transformationSMACIT: The technology trends driving business transformation
SMACIT: The technology trends driving business transformation
 
Native vs Hybrid vs Mobile Web
Native vs Hybrid vs Mobile WebNative vs Hybrid vs Mobile Web
Native vs Hybrid vs Mobile Web
 
Agile Commerce
Agile CommerceAgile Commerce
Agile Commerce
 
Mobile Opportunities
Mobile OpportunitiesMobile Opportunities
Mobile Opportunities
 
Business Case Canvas
Business Case CanvasBusiness Case Canvas
Business Case Canvas
 
Recommendations
RecommendationsRecommendations
Recommendations
 
Kick now - a Lean StartUp Machine project
Kick now - a Lean StartUp Machine projectKick now - a Lean StartUp Machine project
Kick now - a Lean StartUp Machine project
 

Recently uploaded

IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxAbida Shariff
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupCatarinaPereira64715
 
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone KomSalesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone KomCzechDreamin
 
Demystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John StaveleyDemystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John StaveleyJohn Staveley
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsPaul Groth
 
Introduction to Open Source RAG and RAG Evaluation
Introduction to Open Source RAG and RAG EvaluationIntroduction to Open Source RAG and RAG Evaluation
Introduction to Open Source RAG and RAG EvaluationZilliz
 
AI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří KarpíšekAI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří KarpíšekCzechDreamin
 
A Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System StrategyA Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System StrategyUXDXConf
 
Motion for AI: Creating Empathy in Technology
Motion for AI: Creating Empathy in TechnologyMotion for AI: Creating Empathy in Technology
Motion for AI: Creating Empathy in TechnologyUXDXConf
 
Agentic RAG What it is its types applications and implementation.pdf
Agentic RAG What it is its types applications and implementation.pdfAgentic RAG What it is its types applications and implementation.pdf
Agentic RAG What it is its types applications and implementation.pdfChristopherTHyatt
 
Server-Driven User Interface (SDUI) at Priceline
Server-Driven User Interface (SDUI) at PricelineServer-Driven User Interface (SDUI) at Priceline
Server-Driven User Interface (SDUI) at PricelineUXDXConf
 
ECS 2024 Teams Premium - Pretty Secure
ECS 2024   Teams Premium - Pretty SecureECS 2024   Teams Premium - Pretty Secure
ECS 2024 Teams Premium - Pretty SecureFemke de Vroome
 
In-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT ProfessionalsIn-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT ProfessionalsExpeed Software
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonDianaGray10
 
Transforming The New York Times: Empowering Evolution through UX
Transforming The New York Times: Empowering Evolution through UXTransforming The New York Times: Empowering Evolution through UX
Transforming The New York Times: Empowering Evolution through UXUXDXConf
 
What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024Stephanie Beckett
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlPeter Udo Diehl
 
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxUnpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxDavid Michel
 
Designing for Hardware Accessibility at Comcast
Designing for Hardware Accessibility at ComcastDesigning for Hardware Accessibility at Comcast
Designing for Hardware Accessibility at ComcastUXDXConf
 
Speed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in MinutesSpeed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in Minutesconfluent
 

Recently uploaded (20)

IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
 
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone KomSalesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
Salesforce Adoption – Metrics, Methods, and Motivation, Antone Kom
 
Demystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John StaveleyDemystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John Staveley
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
Introduction to Open Source RAG and RAG Evaluation
Introduction to Open Source RAG and RAG EvaluationIntroduction to Open Source RAG and RAG Evaluation
Introduction to Open Source RAG and RAG Evaluation
 
AI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří KarpíšekAI revolution and Salesforce, Jiří Karpíšek
AI revolution and Salesforce, Jiří Karpíšek
 
A Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System StrategyA Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System Strategy
 
Motion for AI: Creating Empathy in Technology
Motion for AI: Creating Empathy in TechnologyMotion for AI: Creating Empathy in Technology
Motion for AI: Creating Empathy in Technology
 
Agentic RAG What it is its types applications and implementation.pdf
Agentic RAG What it is its types applications and implementation.pdfAgentic RAG What it is its types applications and implementation.pdf
Agentic RAG What it is its types applications and implementation.pdf
 
Server-Driven User Interface (SDUI) at Priceline
Server-Driven User Interface (SDUI) at PricelineServer-Driven User Interface (SDUI) at Priceline
Server-Driven User Interface (SDUI) at Priceline
 
ECS 2024 Teams Premium - Pretty Secure
ECS 2024   Teams Premium - Pretty SecureECS 2024   Teams Premium - Pretty Secure
ECS 2024 Teams Premium - Pretty Secure
 
In-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT ProfessionalsIn-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT Professionals
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
Transforming The New York Times: Empowering Evolution through UX
Transforming The New York Times: Empowering Evolution through UXTransforming The New York Times: Empowering Evolution through UX
Transforming The New York Times: Empowering Evolution through UX
 
What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
 
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxUnpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
 
Designing for Hardware Accessibility at Comcast
Designing for Hardware Accessibility at ComcastDesigning for Hardware Accessibility at Comcast
Designing for Hardware Accessibility at Comcast
 
Speed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in MinutesSpeed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in Minutes
 

Deploying asp.net and mvc applications to azure

  • 1. Deploying ASP.NET and MVC applications to Azure Glyn Darkin, Solutions Architect 18/04/2013 Our Awards:
  • 2. What should you be mindful of as a developer if you are considering Azure as a hosting platform?
  • 3. Outside the scope of this discussion • Building for the Cloud • Cloud Service Worker Roles • Big Data • Mobile Services
  • 4. Microsoft Azure for ASP.Net SaaS Websites Media Add-Ons PaaS Cloud Services Service Bus Distributed Cache IaaS VMs Storage Network Hyper-V
  • 5. Azure Website vs. Cloud Service Web Role Comparison Matrix Feature Access to services like Caching, Service Bus, Storage, SQL Azure Database Support for ASP.NET, classic ASP, Node.js, PHP Shared content and configuration Deploy code with GIT, FTP Near-instant deployment Multiple deployment environments (production and staging) Network isolation Remote desktop access to servers Ability to run programs with elevated permissions Ability to define/execute start-up tasks Ability to use unsupported frameworks or libraries Support for Windows Azure Connect/ Windows Azure Network Reference MSDN Blog Web Sites Web Roles Yes Yes Yes Yes Yes No Yes No Yes No No Yes No Yes No Yes No Yes No Yes No Yes No Yes
  • 6. Is Azure the only PaaS that can host ASP.NET? • There will be others • It’s a race to the bottom • Our Solutions should be portable
  • 7. Websites Plain Vanilla Website • Replicates a Shared Hosting Platform but with elastic scalability • Can deploy a plain vanilla ASP.NET website • No SDK dependencies • No IDE dependencies • You can deploy your site to other hosting providers – AWS, AppHarbour, Rackspace • 10 free sites with the domain http://seotools.azurewebsites.net • Entity framework is fully supported with migrations
  • 8. Cloud Service Web Role • 1 Cloud Service represents a single virtual machine • Part of a Cloud Solution • Requires the Azure SDK & tools to be installed • Uses a VIP to switch between a Staging & Production instance – • Your code needs to reference the Azure SDK – • Staging DNS creation & resolution can be SLOW Therefore your product is not portable Local development emulator – – Learn to hack using shared resources – • Very slow code, test, debug cycle Is not the same as Azure, there are differences so be warned!!!! No local disk access
  • 9. Things you need to keep in mind Part 1 • You need to use the Session State provider for Windows Azure Caching – • You don’t have write access to the file system – • TempData uses Session State You will need to store uploaded files in either Blob storage or SQL You are running behind a load balancer – Requests that last longer than 60secs are killed
  • 10. Things to keep in mind Part 2 • There is no SMTP server in Azure – – • User a Service link SendGrid or MailGun User Message Bus to send message on premise and email from there Logging/Trace output – Websites: Tracing output is stored against the website on disk & can be accessed via FTP • – Cloud: Tracing has to be coded & configured & is stored in Table Storage • • Or Streamed into Visual Studio Output Window!!! It can be queried in Visual Studio Configuration – – • Websites: Web.config with transformations Cloud: ServiceDefinition.csdef and ServiceConfiguration.environment.cscfg Images – Push your images to the Azure CDN
  • 11. Deployment Website Cloud Service Direct from TFS Yes Yes Git, Mercurial, FTP Yes No MSBuild, Powershell Yes Yes Visual Studio* Yes Yes Deployment Pipeline No Yes * You should never be deploying from Visual Studio
  • 12. Demo The default MVC website • Windows Azure Website – http://version1.azurewebsites.net/ • Windows Azure Cloud Service – http://version2.cloudapp.net/
  • 13. Comparison of the file structures
  • 14. Windows Azure SQL Same Same but different • Fully managed database environment • Not all T-SQL supported in Azure • SQL Management Studio not fully supported • SQL Server replication not supported • Backup strategy is a little different – SYNC instead • Full-Text Search not supported • Full list of unsupported features • If you want to scale your database then KISS • BCP from the command line is fastest way to get all your data in • MS SQL Server Migration Wizard - http://sqlazuremw.codeplex.com/ http://msdn.microsoft.com/en-us/library/windowsazure/ff394115.aspx
  • 15. Conclusion Recommendations • Websites uses everything you already know • CloudServices you have to learn new stuff • Start with Websites and migrate to a Cloud Service when you need to • Keep in mind that Azure is a moving target • Windows Azure SQL requires a very simple approach – Great for developers, not so much for the SQL DBA • You can always just spin up a VM for a legacy app
  • 16. Q&A &
  • 17. Links • Azure Storage Explorer – Blob, Table, Queue • CloudBerry Storage Explorer – Blob with Sync