SlideShare a Scribd company logo
Porting ASP.NET applications to
Windows Azure
Gunnar Peipman
ASP.NET/IIS MVP
About me
• Name: Gunnar Peipman
• Job: Chief Everything Officer
• Company: Peipman Consult
• Hobbies: Coding, reading,
travelling, cooking, beers, heavy
metal music
• MS: ASP.NET MVP (since 2008)
• Community: ENETA
• Blog: gunnarpeipman.com
• E-mail: me@gunnarpeipman.com
Agenda
• Windows Azure services
• Problems with classic web applications
• Think different
• Sample solutions
• Demo
• Q&A
Windows Azure services
Windows Azure services
Web Sites
Virtual
Machines
Mobile
Services
Cloud
Services
SQL DB Storage
Media
Services
Service
Bus
Cache
Application types
• In-premises: we host everything on our servers
• Cloud: everything is hosted on Windows Azure
• Hybrid: mix of cloud and in-premises
Problems in classic web
applications
Local files
• Direct use of local directories to keep files
• File system support is hardcoded to application
• Not proper use of temporary files
• Using folders above web application root
Local database
• Systems of developed and tested using SQL Server on
development machine
• Database is located in network but not much test data is
available
In-proc and local data
• Session data is kept in server memory
• Cache data is kept in server memory
• Some shared data is kept in static variables
Think different
Change in mindset
• Your code must work in multi-server environment
• There will always be network
• Instead of modules there are pluggable components
• Everything can be service
Breaking dependencies
• Most of the work you do is breaking dependencies
• While breaking dependencies you make generalizations
• You move to modularized code
• You make it easier to test your code
Sample solutions
Generalizing file storage
• Local file system: paths up to 248 chars
• Blob Storage: account -> container -> blob
• Other services:
o Amazon
o OneDrive
o Google Drive
o SharePoint
• Considering all those limits try to get things done 
IFileClient interface
IFileClient interface
ILogger interface
ILogger interface
Sessions and cache
• Stop using in-proc session and cache
• Use SQL Server or some distributed cache
• Test for performance and monitor traffic
• If needed ask session values once per request
Demo: Hybrid applications
Upcoming events
UXify Bulgaria, June 7
Sessions, training day and more
http://uxify.org/
SQLSaturday #311 in October!
http://www.sqlsaturday.com/311/
jQuery Bulgaria, November 22
http://www.jquerybulgaria.com/
Thanks to our Sponsors:
Global Sponsor:
Gold Sponsors:
Swag Sponsors: Media Partners:
More Global Sponsors:
Silver Sponsors:

More Related Content

What's hot (20)

KEY
Why ruby and rails
Reuven Lerner
 
PPTX
Training on iOS app development - Samesh Swongamikha & Neetin Sharma
MobileNepal
 
PDF
O365Con19 - Things I've Learned While Building a Product on SharePoint Modern...
NCCOMMS
 
PPTX
Building solutions with the SharePoint Framework - introduction
Waldek Mastykarz
 
PDF
Async streams
Christian Nagel
 
PPTX
Kickstart android development with xamarin
Foyzul Karim
 
PDF
O365Con19 - Sharing Code Efficiently in your Organisation - Elio Struyf
NCCOMMS
 
PPTX
Lessons from the Trenches - Building Enterprise Applications with RavenDB
Oren Eini
 
PDF
.NET Core Foundations - Dependency Injection, Logging & Configuration - BASTA...
Christian Nagel
 
PDF
Know thy cost (or where performance problems lurk)
Oren Eini
 
PDF
C# 9 - What's the cool stuff? - BASTA! Spring 2021
Christian Nagel
 
PPTX
Vincent biret azure functions and flow (toronto)
Vincent Biret
 
PPTX
Vincent biret azure functions and flow (ottawa)
Vincent Biret
 
PPTX
A practical approach on - How to design offline-online synchronization system
Foyzul Karim
 
PPTX
Developing Cross-Platform Web Apps with ASP.NET Core1.0
EastBanc Tachnologies
 
PPTX
SDLC, Agile methodologies and Career in Product management
Foyzul Karim
 
PDF
No More Cowboy Coding: Modern WordPress Development Workflow That Scales
Tom Howard
 
PDF
RubyConf Taiwan 2016 - Large scale Rails applications
Florian Dutey
 
PPTX
Rainbows, Unicorns, and other Fairy Tales in the Land of Serverless Dreams
Josh Carlisle
 
Why ruby and rails
Reuven Lerner
 
Training on iOS app development - Samesh Swongamikha & Neetin Sharma
MobileNepal
 
O365Con19 - Things I've Learned While Building a Product on SharePoint Modern...
NCCOMMS
 
Building solutions with the SharePoint Framework - introduction
Waldek Mastykarz
 
Async streams
Christian Nagel
 
Kickstart android development with xamarin
Foyzul Karim
 
O365Con19 - Sharing Code Efficiently in your Organisation - Elio Struyf
NCCOMMS
 
Lessons from the Trenches - Building Enterprise Applications with RavenDB
Oren Eini
 
.NET Core Foundations - Dependency Injection, Logging & Configuration - BASTA...
Christian Nagel
 
Know thy cost (or where performance problems lurk)
Oren Eini
 
C# 9 - What's the cool stuff? - BASTA! Spring 2021
Christian Nagel
 
Vincent biret azure functions and flow (toronto)
Vincent Biret
 
Vincent biret azure functions and flow (ottawa)
Vincent Biret
 
A practical approach on - How to design offline-online synchronization system
Foyzul Karim
 
Developing Cross-Platform Web Apps with ASP.NET Core1.0
EastBanc Tachnologies
 
SDLC, Agile methodologies and Career in Product management
Foyzul Karim
 
No More Cowboy Coding: Modern WordPress Development Workflow That Scales
Tom Howard
 
RubyConf Taiwan 2016 - Large scale Rails applications
Florian Dutey
 
Rainbows, Unicorns, and other Fairy Tales in the Land of Serverless Dreams
Josh Carlisle
 

Similar to Porting ASP.NET applications to Windows Azure (20)

PPTX
Directions on microsoft_web_and_cloud_development
Takeshi Shinmura
 
PPTX
2 speed it powered by microsoft azure
Michael Stephenson
 
PPT
Migrating To Visual Studio 2008 & .Net Framework 3.5
Clint Edmonson
 
PPS
01 asp.net session01
Mani Chaubey
 
PPT
ASPNET Roadmap
ukdpe
 
PPT
Migrating To Visual Studio 2008 & .Net Framework 3.5
Jeff Blankenburg
 
PPTX
MSFT Dumaguete 061616 - Building High Performance Apps
Marc Obaldo
 
PPTX
Azure rev002
Rich Helton
 
PDF
Vs2010 Apiit Mix On Campus_Ngan Seok Chern
Quek Lilian
 
PDF
A Deep Dive into Android App Development 2.0.pdf
lubnayasminsebl
 
PPTX
Azure in Developer Perspective
rizaon
 
PPTX
Azure presentation nnug dec 2010
Ethos Technologies
 
PDF
Web Development with ASP.NET: Taking Control of the Digital World
company
 
PPT
Scalable And Usable Web Applications
Clint Edmonson
 
PDF
Evolve Your Web Applications with Microsoft Azure
David J Rosenthal
 
PPT
Considering Windows Azure
Nicklas Andersson
 
PPT
ArcReady - Scalable And Usable Web Applications
Microsoft ArcReady
 
DOCX
How DotNet, SharePoint, and Azure helps to build a Custom Web Application wi...
Aimore Technologies
 
PPT
ASP.NET OVERVIEW
Rishi Kothari
 
Directions on microsoft_web_and_cloud_development
Takeshi Shinmura
 
2 speed it powered by microsoft azure
Michael Stephenson
 
Migrating To Visual Studio 2008 & .Net Framework 3.5
Clint Edmonson
 
01 asp.net session01
Mani Chaubey
 
ASPNET Roadmap
ukdpe
 
Migrating To Visual Studio 2008 & .Net Framework 3.5
Jeff Blankenburg
 
MSFT Dumaguete 061616 - Building High Performance Apps
Marc Obaldo
 
Azure rev002
Rich Helton
 
Vs2010 Apiit Mix On Campus_Ngan Seok Chern
Quek Lilian
 
A Deep Dive into Android App Development 2.0.pdf
lubnayasminsebl
 
Azure in Developer Perspective
rizaon
 
Azure presentation nnug dec 2010
Ethos Technologies
 
Web Development with ASP.NET: Taking Control of the Digital World
company
 
Scalable And Usable Web Applications
Clint Edmonson
 
Evolve Your Web Applications with Microsoft Azure
David J Rosenthal
 
Considering Windows Azure
Nicklas Andersson
 
ArcReady - Scalable And Usable Web Applications
Microsoft ArcReady
 
How DotNet, SharePoint, and Azure helps to build a Custom Web Application wi...
Aimore Technologies
 
ASP.NET OVERVIEW
Rishi Kothari
 
Ad

More from Gunnar Peipman (10)

PPTX
Multi-tenant web applications with ASP.NET Core
Gunnar Peipman
 
PPTX
Brewing Eisbock with Raspberry PI and Windows 10 IoT
Gunnar Peipman
 
PPTX
Deep-Dive to Azure Search
Gunnar Peipman
 
PPTX
Deep-Dive to Application Insights
Gunnar Peipman
 
PPTX
What's new in ASP.NET vNext
Gunnar Peipman
 
PPTX
Working with legacy code
Gunnar Peipman
 
PPTX
ASP.NET MVC 4 Overview
Gunnar Peipman
 
PPTX
Building SharePoint Online applications using Napa Office 365 Development Tools
Gunnar Peipman
 
PPTX
Optimizing public facing SharePoint sites
Gunnar Peipman
 
PPTX
Architecting ASP.NET MVC Applications
Gunnar Peipman
 
Multi-tenant web applications with ASP.NET Core
Gunnar Peipman
 
Brewing Eisbock with Raspberry PI and Windows 10 IoT
Gunnar Peipman
 
Deep-Dive to Azure Search
Gunnar Peipman
 
Deep-Dive to Application Insights
Gunnar Peipman
 
What's new in ASP.NET vNext
Gunnar Peipman
 
Working with legacy code
Gunnar Peipman
 
ASP.NET MVC 4 Overview
Gunnar Peipman
 
Building SharePoint Online applications using Napa Office 365 Development Tools
Gunnar Peipman
 
Optimizing public facing SharePoint sites
Gunnar Peipman
 
Architecting ASP.NET MVC Applications
Gunnar Peipman
 
Ad

Recently uploaded (20)

PPTX
From Sci-Fi to Reality: Exploring AI Evolution
Svetlana Meissner
 
PPTX
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
PPTX
Future Tech Innovations 2025 – A TechLists Insight
TechLists
 
PPTX
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
PDF
Transforming Utility Networks: Large-scale Data Migrations with FME
Safe Software
 
PPTX
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
PDF
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
PPTX
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
PDF
July Patch Tuesday
Ivanti
 
PPTX
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
PDF
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PDF
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
PDF
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
PDF
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
PPTX
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
PDF
Advancing WebDriver BiDi support in WebKit
Igalia
 
PDF
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
PDF
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
PDF
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
From Sci-Fi to Reality: Exploring AI Evolution
Svetlana Meissner
 
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
Future Tech Innovations 2025 – A TechLists Insight
TechLists
 
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
Transforming Utility Networks: Large-scale Data Migrations with FME
Safe Software
 
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
July Patch Tuesday
Ivanti
 
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
Advancing WebDriver BiDi support in WebKit
Igalia
 
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 

Porting ASP.NET applications to Windows Azure

  • 1. Porting ASP.NET applications to Windows Azure Gunnar Peipman ASP.NET/IIS MVP
  • 2. About me • Name: Gunnar Peipman • Job: Chief Everything Officer • Company: Peipman Consult • Hobbies: Coding, reading, travelling, cooking, beers, heavy metal music • MS: ASP.NET MVP (since 2008) • Community: ENETA • Blog: gunnarpeipman.com • E-mail: [email protected]
  • 3. Agenda • Windows Azure services • Problems with classic web applications • Think different • Sample solutions • Demo • Q&A
  • 5. Windows Azure services Web Sites Virtual Machines Mobile Services Cloud Services SQL DB Storage Media Services Service Bus Cache
  • 6. Application types • In-premises: we host everything on our servers • Cloud: everything is hosted on Windows Azure • Hybrid: mix of cloud and in-premises
  • 7. Problems in classic web applications
  • 8. Local files • Direct use of local directories to keep files • File system support is hardcoded to application • Not proper use of temporary files • Using folders above web application root
  • 9. Local database • Systems of developed and tested using SQL Server on development machine • Database is located in network but not much test data is available
  • 10. In-proc and local data • Session data is kept in server memory • Cache data is kept in server memory • Some shared data is kept in static variables
  • 12. Change in mindset • Your code must work in multi-server environment • There will always be network • Instead of modules there are pluggable components • Everything can be service
  • 13. Breaking dependencies • Most of the work you do is breaking dependencies • While breaking dependencies you make generalizations • You move to modularized code • You make it easier to test your code
  • 15. Generalizing file storage • Local file system: paths up to 248 chars • Blob Storage: account -> container -> blob • Other services: o Amazon o OneDrive o Google Drive o SharePoint • Considering all those limits try to get things done 
  • 20. Sessions and cache • Stop using in-proc session and cache • Use SQL Server or some distributed cache • Test for performance and monitor traffic • If needed ask session values once per request
  • 22. Upcoming events UXify Bulgaria, June 7 Sessions, training day and more http://uxify.org/ SQLSaturday #311 in October! http://www.sqlsaturday.com/311/ jQuery Bulgaria, November 22 http://www.jquerybulgaria.com/
  • 23. Thanks to our Sponsors: Global Sponsor: Gold Sponsors: Swag Sponsors: Media Partners: More Global Sponsors: Silver Sponsors: