Location3 and Azure BFFs

  • 143 views
Uploaded on

This is a presentation I put together for the Denver Azure User Group (DAUG). This explains how we built using open source and Azure to build a robust system for managing our Local Listing data at …

This is a presentation I put together for the Denver Azure User Group (DAUG). This explains how we built using open source and Azure to build a robust system for managing our Local Listing data at Location3.

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
143
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
0
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. LOCATION3 AND AZURE BFFSPETER SEEWALD
  • 2. AGENDA• Why Azure?• Map Application Architecture Overview w/Demo• Things we learned• The Future• Tools• Open Source Resources
  • 3. WHY AZURE?• .Net shop• Bizspark discount/price• Less maintenance/management for developers, we are a small shop. (PaaS versus IaaS)• TCO (Total Cost of Ownership)• Existing Brownfield applications are .Net• Lokad Cloud built on Azure (One core application was designed with)
  • 4. MAP APPLICATION ARCHITECTUREEngine (Worker console, worker roles)• MVC (Asp.net MVC 3)• Generic Workers (Each worker is the identical)• Auto and manual Provisioning (Horizontal scalability)• Queues (Main source of work)• Loosely coupled via durable messaging• Idempotent work/Resilience (Will have no affect if message is reprocessed by different worker)• RDMS(SQL Azure)• Blob storage for generated reportsWeb Application• MVC (Asp.net MVC 3)• Authentication(ACS with WIF for authentication against ADFS)• RDMS (SQL Azure)• UI(JQuery,JQuery UI, and Jqgrid)SharedHeavy use of open source(Lokad Cloud,AutoMapper,Autofac,Cassette,Elmah,Rhino Mocks,Fluent Assertions,JqGrid,Windows Azure Accelerator)
  • 5. ENGINE
  • 6. WEB APPLICATION
  • 7. OVERVIEW
  • 8. THINGS WE LEARNED• We had to learn how to handle DB Backups on our own in for SQL Azure. (Rolled our own tool.)• Deploying to Azure is really slow.• Deploying web roles in current version of azure was painful so we used Azure web accelerator (Allows multiple sites on 1 or more web roles)• Azure SDK still doesn’t have abstractions over it making hard to test unless you run the emulator.• Learning curve to learn a framework and its nuances is better than trying to roll your own. More time to focus on the domain problem you are trying to solve.• Trying to figure out billing early on was very hard. We used a third-party beta SaSS product called CloudValue for a long time. Subscriptions were all billed metered separately, instead of rolled up across our account.• ACS, hacks for Azure with Certificates and encryption issues.
  • 9. THE FUTURE• Going to migrate current web applications to new Azure Websites• Currently looking to move our Brownfield applications to the new Azure persistent VM’s• Recently involved in Hadoop on Azure Trial• Team Foundation Server in Azure or Git• We are hopeful within the next 1-2 years to have all IT Infrastructure in Azure or some other cloud service
  • 10. TOOLSAzure Storage Explorer - http://azurestorageexplorer.codeplex.com/Cloudberry Explorer - http://www.cloudberrylab.com/free-microsoft-azure-explorer.aspxSQL DAC Import Export - http://sqldacexamples.codeplex.com/releasesSQL Azure MW - http://sqlazuremw.codeplex.com/
  • 11. OPEN SOURCE RESOURCESLokad Cloud - http://lokad.github.com/lokad-cloud/AutoMapper - http://automapper.org/Autofac - http://code.google.com/p/autofac/Cassette - http://getcassette.net/Elmah - http://code.google.com/p/elmah/Rhino Mocks - http://hibernatingrhinos.com/open-source/rhino-mocksFluent Assertions - http://fluentassertions.codeplex.com/JqGrid - http://www.trirand.net/Windows Azure Accelerator - https://github.com/microsoft-dpe/wa-accelerator-webroles