Brewing Beer
                    with Windows Azure
                            Maarten Balliauw
                            @maartenballiauw

http://jabbr.net/#/rooms/aspconf-room4
Who am I?
• Maarten Balliauw
• www.realdolmen.com
• Focus on web
  – ASP.NET MVC, Windows Azure, SignalR, ...
  – MVP Windows Azure & ASPInsider
• http://blog.maartenballiauw.be
• @maartenballiauw
Antwerp, Belgium
Who am I?
• Maarten Balliauw
• www.realdolmen.com
• Focus on web
  – ASP.NET MVC, Windows Azure, SignalR, ...
  – MVP Windows Azure & ASPInsider
• http://blog.maartenballiauw.be
• @maartenballiauw
Shameless commercial plug
• Pro NuGet:
  http://amzn.to/pronuget

• MyGet - NuGet-as-a-Service:
  http://www.myget.org
Agenda
• Brewing beer
• BrewBuddy
• Windows Azure Websites
• Service Bus & Access Control Service
  (ACS)
• We need an API
        http://jabbr.net/#/rooms/aspconf-room4
• Q&A
Turn water into beer

Brewing Beer
How it started…
How it started…
• MVP Summit 2011
  – Wade Wegner talks about his
    homebrewing hobby
• MVP Summit 2012
  – Wade Wegner talks about his
    homebrewing hobby
• Convinced!
The process
•   Get your kegs clean
•   Add & boil ingredients
•   Pour in keg
•   Add yeast
•   Rinse
The process
Wait for fermentation to complete
The process
•   Pour into another keg
•   Rinse
•   Wait another week
•   Bottling time!
Difficult part…
Wait at least 6 weeks
  for it to age
Maarten…
    What does this have
to do with Windows Azure?
Azurifying the home brewer

www.BrewBuddy.net
BrewBuddy
•   View public recipes
•   Manage your own recipes
•   Manage your own brews
•   Monitor brew fermentation
BrewBuddy
 Social brewing at a glance

demo
Architecture
  Sensor                       Public website
                               Windows Azure Web Sites
  Whatever…



                               Database
                               SQL Azure database



           Sensor data         Sensor data processing
           Service Bus topic   Windows Azure Worker Role
Scale-fast has just become more interesting

Windows Azure Web Sites
Windows Azure Web Sites


           Build with ASP.NET, Node.js or PHP
           Deploy in seconds with FTP, Git or TFS
           Start for free, scale up as your traffic
            grows
Windows Azure Web Sites
           shared            1
SHARED INSTANCES
Windows Azure Web Sites
           shared            2
SHARED INSTANCES
Windows Azure Web Sites
         reserved                       0
                                        1
SHARED INSTANCES    RESERVED INSTANCE
Windows Azure Web Sites
  reserved                          2
                RESERVED INSTANCE
Windows Azure Web Sites
  reserved                                   2
                RESERVED INSTANCE   RESERVED INSTANCE
A perfect ramp-up!
• Start small
  – Web Sites are cheap
  – Scale to 3 reserved instances
• Grow big!
  – Hosted Service – PaaS
  – Scale at will
Windows Azure Web Sites
 Creating a new web site in seconds

demo
Connecting sensors

Service Bus
& Access Control Service
Windows Azure Service Bus
• 2 features
  – Relay
  – Queues, Topics, Subscriptions
Windows Azure Service Bus Relay


               relay




     Client
Topics and subscriptions


     Sensor
Characteristics
• Workers can scale independently
• Workers can fail independently
• Sensors connect to service bus
  directly
  – No layer in between
  – Cheaper
What about authN / authZ?
•   Access Control Service to the rescue!
•   SB authenticates clients over ACS
•   ACS provides “Send” claim to sensor
•   Claims can be granted/revoked easily
Access Control Service
 Claims for authZ on Service Bus

demo
Architecture
  Sensor                            Public website
                                    Windows Azure Web Sites
  Whatever…



           Sensor management        Database
           Access Control Service   SQL Azure database



           Sensor data              Sensor data processing
           Service Bus topic        Windows Azure Worker Role
How do you link a sensor?
• Every sensor has its sensor ID
• Add it as an identity to ACS
• Grant a “Send” claim
Linking a sensor toAccess Control
  Registering a sensor with a brew
  Service

demo
<french>Make everyone API!</french>

We need an API
What is an API?
• Software-to-Software interface
• Contract between software and
  developers
  – Functionalities, constraints (technical /
    legal) Programming instructions and
    standards
• Open services to other software
Do we need one?
• Reach to scale
• Smartphone generation
• BYOD with 3 screens: phone, tablet and
  computer
• Flexibility in providing content
• You have data to share
• Integration
Build Richer Apps
Reach More Clients
ASP.NET Web API
• Part of ASP.NET MVC 4
• Framework to build HTTP Services (REST)
• Solid features
   –   Modern HTTP programming model
   –   Content negotiation (e.g. Xml, json, ...)
   –   Query composition (OData query support)
   –   Model binding and validation (conversion to .NET objects)
   –   Routes
   –   Filters (e.g. Validation, exception handling, ...)
   –   And more!
ASP.NET Web API
 Let’s craft a quick API

demo
What about authN / authZ?
•   API access through OAuth2
•   Access Control Service to the rescue!
•   Client authorized in BrewBuddy.net
•   Access/refresh tokens through ACS
What about authN / authZ?

  API Consumer                                               BrewBuddy.net
  client_id and client_secret      access API
                                   authorize                 Initial authorization (yes/no)
                                                             API implementation


                 access/refresh token           register delegation



                              Access Control Service
                              Access/Refresh Token
Access Control Service for API’s
  OAuth2 delegation

demo
 Install-Package WindowsAzure.Acs.Oauth2 -IncludePrerelease
Takeaways
Keep in mind…
• Web Sites start cheap / scale fast
• Combine/grow at will
  (IaaS, PaaS, SaaS)
• Service bus for asynchrony and scale
• Access Control for devices
• Web API & Access Control
Related sessions
Today
• 3:30-5pm UTC
    – Test-First and Functional-First with Web API (room 3)
•   8-9:30pm UTC
    – Ask the Experts (SignalR, MVC, Web API) (live video)
•   9:30-11pm UTC
    – Azure SDK (room 1)
    – Introduction to the ASP.NET Web API (room 2)

Tomorrow
• 3:30-5pm UTC
    – From Zero to Hero: Windows Azure Web Sites and TFS Preview (room 3)
    – Advanced ASP.NET Web API (room 5)
•   9:30-11pm UTC
    – The Lightweight Approach to Building Web Based APIs with .Net
Q&A
http://bit.ly/Mrx0tH




       Brewing Beer with Windows Azure

Thanks!                      @maartenballiauw

More Related Content

PPTX
Active Directory Single Sign-On with IBM
PPT
Windows Azure Essentials V3
PPTX
azure track -05- windows azure pack deep dive
PDF
Workspaces @ jcu
PPTX
Azure Websites
PPTX
Codestrong 2012 breakout session building your own custom cloud services
PPTX
IBM Social Business Toolkit
PPTX
Intro to Azure Static Web Apps
Active Directory Single Sign-On with IBM
Windows Azure Essentials V3
azure track -05- windows azure pack deep dive
Workspaces @ jcu
Azure Websites
Codestrong 2012 breakout session building your own custom cloud services
IBM Social Business Toolkit
Intro to Azure Static Web Apps

What's hot (18)

PPTX
Global Windows Azure Bootcamp - San Diego
PDF
Joomla! Scalable Enterprise Deployments with AWS
PPTX
Migrare Applicazioni Web su Azure
PPTX
IT Talk «Microservices & Serverless Architectures», Alexander Chichenin (Solu...
PPTX
Real World SharePoint Add-In Development
PPTX
02 hosting servicesinwindowsazure
PDF
Journey to a multi-tenant e commerce solution in the cloud with Kubernetes - ...
PDF
Azure Cloud Dev Camp - App Platform
PPTX
Azure app service to create web and mobile apps
PPTX
System Center & SharePoint on prem
PDF
Como construir suas aplicações escaláveis sem servidores
PPTX
Introduction into Windows Azure Pack and Service Management Automation
PPTX
Overview of Azure and Cloud Computing
PDF
Web app development with Flask
PPTX
Windows Azure Mobile Services at ReBOOT Cloud Camp , Bangalore
PPTX
Navigating the turbulence on takeoff: Setting up SharePoint on Azure IaaS the...
PDF
AWS Serverless Workshop
PPTX
The new Azure App Service Architecture
Global Windows Azure Bootcamp - San Diego
Joomla! Scalable Enterprise Deployments with AWS
Migrare Applicazioni Web su Azure
IT Talk «Microservices & Serverless Architectures», Alexander Chichenin (Solu...
Real World SharePoint Add-In Development
02 hosting servicesinwindowsazure
Journey to a multi-tenant e commerce solution in the cloud with Kubernetes - ...
Azure Cloud Dev Camp - App Platform
Azure app service to create web and mobile apps
System Center & SharePoint on prem
Como construir suas aplicações escaláveis sem servidores
Introduction into Windows Azure Pack and Service Management Automation
Overview of Azure and Cloud Computing
Web app development with Flask
Windows Azure Mobile Services at ReBOOT Cloud Camp , Bangalore
Navigating the turbulence on takeoff: Setting up SharePoint on Azure IaaS the...
AWS Serverless Workshop
The new Azure App Service Architecture
Ad

Similar to Brewing Beer with Windows Azure - ASPConf (20)

PPTX
Brewing Beer with Windows Azure
PPTX
Brewing Beer with Windows Azure
PPTX
Brewing Beer with Windows Azure - NDC2013
PPTX
Brewing Beer with Windows Azure (WAZUG.nl)
PPTX
Brewing Beer with Windows Azure UKWAUG
PPTX
What's New for the Windows Azure Developer? Lots!!
PPTX
Mobile services on windows azure (part1)
PPTX
Sudheer d socalcodecamp_10_16_2011
PPTX
Scalability in cloud applications
PPTX
Students to Business Day 2012: Maarten Balliauw
PDF
Middleware in the cloud platform-v2
PDF
Developing and deploying windows azure applications
PDF
Introduction to Windows Azure
PPTX
AZ-900T00A-ENU-PowerPoint-02.pptx
PPTX
The Microsoft Cloud Partner
PDF
Azure Cloud Application Development Workshop - UGIdotNET
PDF
MS TechDays 2011 - How to Run Middleware in the Cloud Story of Windows Azure ...
PPTX
Azure platform for customers
PPTX
Microsoft Windows Azure - Platfrom Appfabric Service Bus And Access Control P...
PPTX
Introduction to Windows Azure and Windows Azure SQL Database
Brewing Beer with Windows Azure
Brewing Beer with Windows Azure
Brewing Beer with Windows Azure - NDC2013
Brewing Beer with Windows Azure (WAZUG.nl)
Brewing Beer with Windows Azure UKWAUG
What's New for the Windows Azure Developer? Lots!!
Mobile services on windows azure (part1)
Sudheer d socalcodecamp_10_16_2011
Scalability in cloud applications
Students to Business Day 2012: Maarten Balliauw
Middleware in the cloud platform-v2
Developing and deploying windows azure applications
Introduction to Windows Azure
AZ-900T00A-ENU-PowerPoint-02.pptx
The Microsoft Cloud Partner
Azure Cloud Application Development Workshop - UGIdotNET
MS TechDays 2011 - How to Run Middleware in the Cloud Story of Windows Azure ...
Azure platform for customers
Microsoft Windows Azure - Platfrom Appfabric Service Bus And Access Control P...
Introduction to Windows Azure and Windows Azure SQL Database
Ad

More from Maarten Balliauw (20)

PPTX
Bringing nullability into existing code - dammit is not the answer.pptx
PPTX
Nerd sniping myself into a rabbit hole... Streaming online audio to a Sonos s...
PPTX
Building a friendly .NET SDK to connect to Space
PPTX
Microservices for building an IDE - The innards of JetBrains Rider - NDC Oslo...
PPTX
Indexing and searching NuGet.org with Azure Functions and Search - .NET fwday...
PPTX
NDC Sydney 2019 - Microservices for building an IDE – The innards of JetBrain...
PPTX
JetBrains Australia 2019 - Exploring .NET’s memory management – a trip down m...
PPTX
.NET Conf 2019 - Indexing and searching NuGet.org with Azure Functions and Se...
PPTX
CloudBurst 2019 - Indexing and searching NuGet.org with Azure Functions and S...
PPTX
NDC Oslo 2019 - Indexing and searching NuGet.org with Azure Functions and Search
PPTX
Approaches for application request throttling - Cloud Developer Days Poland
PPTX
Indexing and searching NuGet.org with Azure Functions and Search - Cloud Deve...
PPTX
Approaches for application request throttling - dotNetCologne
PPTX
CodeStock - Exploring .NET memory management - a trip down memory lane
PPTX
ConFoo Montreal - Microservices for building an IDE - The innards of JetBrain...
PPTX
ConFoo Montreal - Approaches for application request throttling
PPTX
Microservices for building an IDE – The innards of JetBrains Rider - TechDays...
PPTX
JetBrains Day Seoul - Exploring .NET’s memory management – a trip down memory...
PPTX
DotNetFest - Let’s refresh our memory! Memory management in .NET
PPTX
VISUG - Approaches for application request throttling
Bringing nullability into existing code - dammit is not the answer.pptx
Nerd sniping myself into a rabbit hole... Streaming online audio to a Sonos s...
Building a friendly .NET SDK to connect to Space
Microservices for building an IDE - The innards of JetBrains Rider - NDC Oslo...
Indexing and searching NuGet.org with Azure Functions and Search - .NET fwday...
NDC Sydney 2019 - Microservices for building an IDE – The innards of JetBrain...
JetBrains Australia 2019 - Exploring .NET’s memory management – a trip down m...
.NET Conf 2019 - Indexing and searching NuGet.org with Azure Functions and Se...
CloudBurst 2019 - Indexing and searching NuGet.org with Azure Functions and S...
NDC Oslo 2019 - Indexing and searching NuGet.org with Azure Functions and Search
Approaches for application request throttling - Cloud Developer Days Poland
Indexing and searching NuGet.org with Azure Functions and Search - Cloud Deve...
Approaches for application request throttling - dotNetCologne
CodeStock - Exploring .NET memory management - a trip down memory lane
ConFoo Montreal - Microservices for building an IDE - The innards of JetBrain...
ConFoo Montreal - Approaches for application request throttling
Microservices for building an IDE – The innards of JetBrains Rider - TechDays...
JetBrains Day Seoul - Exploring .NET’s memory management – a trip down memory...
DotNetFest - Let’s refresh our memory! Memory management in .NET
VISUG - Approaches for application request throttling

Recently uploaded (20)

PDF
1 - Historical Antecedents, Social Consideration.pdf
PDF
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
PPTX
O2C Customer Invoices to Receipt V15A.pptx
PDF
How ambidextrous entrepreneurial leaders react to the artificial intelligence...
PPTX
Modernising the Digital Integration Hub
PDF
A review of recent deep learning applications in wood surface defect identifi...
PDF
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
PDF
Taming the Chaos: How to Turn Unstructured Data into Decisions
PDF
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
PPTX
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PPTX
observCloud-Native Containerability and monitoring.pptx
PPTX
Web Crawler for Trend Tracking Gen Z Insights.pptx
PPT
Module 1.ppt Iot fundamentals and Architecture
PDF
Architecture types and enterprise applications.pdf
PDF
NewMind AI Weekly Chronicles – August ’25 Week III
PPTX
Tartificialntelligence_presentation.pptx
PDF
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
PDF
sustainability-14-14877-v2.pddhzftheheeeee
PDF
A Late Bloomer's Guide to GenAI: Ethics, Bias, and Effective Prompting - Boha...
1 - Historical Antecedents, Social Consideration.pdf
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
O2C Customer Invoices to Receipt V15A.pptx
How ambidextrous entrepreneurial leaders react to the artificial intelligence...
Modernising the Digital Integration Hub
A review of recent deep learning applications in wood surface defect identifi...
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
Taming the Chaos: How to Turn Unstructured Data into Decisions
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
observCloud-Native Containerability and monitoring.pptx
Web Crawler for Trend Tracking Gen Z Insights.pptx
Module 1.ppt Iot fundamentals and Architecture
Architecture types and enterprise applications.pdf
NewMind AI Weekly Chronicles – August ’25 Week III
Tartificialntelligence_presentation.pptx
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
sustainability-14-14877-v2.pddhzftheheeeee
A Late Bloomer's Guide to GenAI: Ethics, Bias, and Effective Prompting - Boha...

Brewing Beer with Windows Azure - ASPConf

  • 1. Brewing Beer with Windows Azure Maarten Balliauw @maartenballiauw http://jabbr.net/#/rooms/aspconf-room4
  • 2. Who am I? • Maarten Balliauw • www.realdolmen.com • Focus on web – ASP.NET MVC, Windows Azure, SignalR, ... – MVP Windows Azure & ASPInsider • http://blog.maartenballiauw.be • @maartenballiauw
  • 4. Who am I? • Maarten Balliauw • www.realdolmen.com • Focus on web – ASP.NET MVC, Windows Azure, SignalR, ... – MVP Windows Azure & ASPInsider • http://blog.maartenballiauw.be • @maartenballiauw
  • 5. Shameless commercial plug • Pro NuGet: http://amzn.to/pronuget • MyGet - NuGet-as-a-Service: http://www.myget.org
  • 6. Agenda • Brewing beer • BrewBuddy • Windows Azure Websites • Service Bus & Access Control Service (ACS) • We need an API http://jabbr.net/#/rooms/aspconf-room4 • Q&A
  • 7. Turn water into beer Brewing Beer
  • 9. How it started… • MVP Summit 2011 – Wade Wegner talks about his homebrewing hobby • MVP Summit 2012 – Wade Wegner talks about his homebrewing hobby • Convinced!
  • 10. The process • Get your kegs clean • Add & boil ingredients • Pour in keg • Add yeast • Rinse
  • 11. The process Wait for fermentation to complete
  • 12. The process • Pour into another keg • Rinse • Wait another week • Bottling time!
  • 13. Difficult part… Wait at least 6 weeks for it to age
  • 14. Maarten… What does this have to do with Windows Azure?
  • 15. Azurifying the home brewer www.BrewBuddy.net
  • 16. BrewBuddy • View public recipes • Manage your own recipes • Manage your own brews • Monitor brew fermentation
  • 17. BrewBuddy Social brewing at a glance demo
  • 18. Architecture Sensor Public website Windows Azure Web Sites Whatever… Database SQL Azure database Sensor data Sensor data processing Service Bus topic Windows Azure Worker Role
  • 19. Scale-fast has just become more interesting Windows Azure Web Sites
  • 20. Windows Azure Web Sites  Build with ASP.NET, Node.js or PHP  Deploy in seconds with FTP, Git or TFS  Start for free, scale up as your traffic grows
  • 21. Windows Azure Web Sites shared 1 SHARED INSTANCES
  • 22. Windows Azure Web Sites shared 2 SHARED INSTANCES
  • 23. Windows Azure Web Sites reserved 0 1 SHARED INSTANCES RESERVED INSTANCE
  • 24. Windows Azure Web Sites reserved 2 RESERVED INSTANCE
  • 25. Windows Azure Web Sites reserved 2 RESERVED INSTANCE RESERVED INSTANCE
  • 26. A perfect ramp-up! • Start small – Web Sites are cheap – Scale to 3 reserved instances • Grow big! – Hosted Service – PaaS – Scale at will
  • 27. Windows Azure Web Sites Creating a new web site in seconds demo
  • 28. Connecting sensors Service Bus & Access Control Service
  • 29. Windows Azure Service Bus • 2 features – Relay – Queues, Topics, Subscriptions
  • 30. Windows Azure Service Bus Relay relay Client
  • 32. Characteristics • Workers can scale independently • Workers can fail independently • Sensors connect to service bus directly – No layer in between – Cheaper
  • 33. What about authN / authZ? • Access Control Service to the rescue! • SB authenticates clients over ACS • ACS provides “Send” claim to sensor • Claims can be granted/revoked easily
  • 34. Access Control Service Claims for authZ on Service Bus demo
  • 35. Architecture Sensor Public website Windows Azure Web Sites Whatever… Sensor management Database Access Control Service SQL Azure database Sensor data Sensor data processing Service Bus topic Windows Azure Worker Role
  • 36. How do you link a sensor? • Every sensor has its sensor ID • Add it as an identity to ACS • Grant a “Send” claim
  • 37. Linking a sensor toAccess Control Registering a sensor with a brew Service demo
  • 39. What is an API? • Software-to-Software interface • Contract between software and developers – Functionalities, constraints (technical / legal) Programming instructions and standards • Open services to other software
  • 40. Do we need one? • Reach to scale • Smartphone generation • BYOD with 3 screens: phone, tablet and computer • Flexibility in providing content • You have data to share • Integration
  • 41. Build Richer Apps Reach More Clients
  • 42. ASP.NET Web API • Part of ASP.NET MVC 4 • Framework to build HTTP Services (REST) • Solid features – Modern HTTP programming model – Content negotiation (e.g. Xml, json, ...) – Query composition (OData query support) – Model binding and validation (conversion to .NET objects) – Routes – Filters (e.g. Validation, exception handling, ...) – And more!
  • 43. ASP.NET Web API Let’s craft a quick API demo
  • 44. What about authN / authZ? • API access through OAuth2 • Access Control Service to the rescue! • Client authorized in BrewBuddy.net • Access/refresh tokens through ACS
  • 45. What about authN / authZ? API Consumer BrewBuddy.net client_id and client_secret access API authorize Initial authorization (yes/no) API implementation access/refresh token register delegation Access Control Service Access/Refresh Token
  • 46. Access Control Service for API’s OAuth2 delegation demo Install-Package WindowsAzure.Acs.Oauth2 -IncludePrerelease
  • 48. Keep in mind… • Web Sites start cheap / scale fast • Combine/grow at will (IaaS, PaaS, SaaS) • Service bus for asynchrony and scale • Access Control for devices • Web API & Access Control
  • 49. Related sessions Today • 3:30-5pm UTC – Test-First and Functional-First with Web API (room 3) • 8-9:30pm UTC – Ask the Experts (SignalR, MVC, Web API) (live video) • 9:30-11pm UTC – Azure SDK (room 1) – Introduction to the ASP.NET Web API (room 2) Tomorrow • 3:30-5pm UTC – From Zero to Hero: Windows Azure Web Sites and TFS Preview (room 3) – Advanced ASP.NET Web API (room 5) • 9:30-11pm UTC – The Lightweight Approach to Building Web Based APIs with .Net
  • 50. Q&A
  • 51. http://bit.ly/Mrx0tH Brewing Beer with Windows Azure Thanks! @maartenballiauw

Editor's Notes

  • #4: Maarten
  • #6: Maarten
  • #19: Don’t show everythingyet. Just log in, show themaround the recipes, brewsand public recipes. Feel free to show the monitoring but no needto display the linking of sensors.
  • #29: Show Windows Azure Web SitesShow scaling / reservedinstances
  • #36: Show peoplearound the ACS porta. Show identities, claims andrulegroups.
  • #39: Link a sensor to a brew. Show the effect on ACS. Show the code.
  • #45: Link a sensor to a brew. Show the effect on ACS. Show the code.
  • #48: Show peoplearound the ACS porta. Show identities, claims andrulegroups.