Your SlideShare is downloading. ×
My cloud + Windows Phone app experience
My cloud + Windows Phone app experience
My cloud + Windows Phone app experience
My cloud + Windows Phone app experience
My cloud + Windows Phone app experience
My cloud + Windows Phone app experience
My cloud + Windows Phone app experience
My cloud + Windows Phone app experience
My cloud + Windows Phone app experience
My cloud + Windows Phone app experience
My cloud + Windows Phone app experience
My cloud + Windows Phone app experience
My cloud + Windows Phone app experience
My cloud + Windows Phone app experience
My cloud + Windows Phone app experience
My cloud + Windows Phone app experience
My cloud + Windows Phone app experience
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

My cloud + Windows Phone app experience

685

Published on

Short slides about some of the app services and cloud basics used for the 4th & Mayor app, a Windows Phone foursquare app. Presented at a Windows Phone Garage event in Redmond, WA on 3/14/2013.

Short slides about some of the app services and cloud basics used for the 4th & Mayor app, a Windows Phone foursquare app. Presented at a Windows Phone Garage event in Redmond, WA on 3/14/2013.

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
685
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
5
Comments
0
Likes
1
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. MY CLOUD +WINDOWS PHONE @jeffwilcox Developer, 4th & Mayor EXPERIENCE
  • 2. JEFF’S TOPICSMy cloud environment$$$The cloud APIs I exposeStaging and Production EnvironmentsConnecting to the cloud from my client applicationLogging and StatisticsMigration challengesScalePush Notifications for Node.js / Azure open source
  • 3. MY CLOUD ENVIRONMENTAmazon Web Services Windows Azure DNS (Route 53)  Web Sites Compute (EC2)  API Web Services (Node.js)  Web Site www.4thandmayor.com Load Balancing (ELB)  Staging Environment for APIs & main Web Site Storage (S3) & CDN  Live Tile Generation* Text and Email Notifications (SNS)  Cloud Service Worker Role: Mail Intra-region data transfer to 3rd party Processing services  Cloud Service Web Role: SSL Load BalancerMongoLab  Table Storage Service Hosted MongoDB in US-EAST-1AWS  User Data, Push Processing Queues  Virtual Machines  Linux: Statsd statistics & time/data store Hosted MongoDB in West US / Azure Store  Web Site Sessions  Windows Azure Store
  • 4. MY CLOUD ENVIRONMENTAmazon Web Services Windows Azure DNS (Route 53)  Web Sites $50-$100* Compute (EC2) $25-$150  API Web Services (Node.js) *trial/partially free compute  Web Site www.4thandmayor.com Load Balancing (ELB)  Staging Environment for APIs & main Web Site Storage (S3) & CDN  Live Tile Generation* Text and Email Notifications (SNS)  Cloud Service Worker Role: Mail Intra-region data transfer to 3rd party Processing services  Cloud Service Web Role: SSL Load BalancerMongoLab $40 Hosted MongoDB in US-EAST-1AWS  Table Storage Service  User Data, Push Processing Queues  Virtual Machines  Linux: Statsd statistics & time/data store Hosted MongoDB in West US / Azure Store  Web Site Sessions FREE  Windows Azure Store
  • 5. BILLS
  • 6. AZURE PORTAL ROCKS!
  • 7. CLOUD APISMy Services Storage-hosted services Push notification connections, disconnects,  What’s new content push URI changes  Known current version number Automated Crash Reports  Version-specific kill bits, global kill bit Email crash reports & mail parsing  Standard tiles Custom live tile generation 3rd Party Services App settings & preferences  Foursquare Continuous processing queue  Google Analytics  Live tiles, toasts, new users, upgrade logic, special tasks 3rd Party Tools  UserVoice ($0)  Platform/version-specific tasks & services  Tumblr ($0)  GitHub ($12)
  • 8. STAGING & PRODUCTIONDebug builds target my staging environmentStaging uses modified JSON values (keys, certificates, etc.)Git deployment with Azure Web Sites makes it quick & easyProduction challengesVersion-specific endpointsMigration between providersDatabase and cloud downtime
  • 9. AUTHENTICATION, KEYS,CERTS…Environment variable MODE assign staging/production valueEnvironment variable APP assigns service: e-mail processing, worker, web,API hostJSON-based configuration loaded through configuration.js
  • 10. CONNECTING FROM THECLIENT APPHttpClient NuGet/PCLRetry policies, handling HTTP statusGZip CompressionRestSharpJSON.NETCaching technology & strategies; AgFx
  • 11. LOGGING & STATISTICSLogs Stats Detailed  Statsd, Graphite, Carbon Table storage  Time scale storage Per-user  UDP Winston (Node.js logger) extension  Fire and forget  Linux VM on Azure or EC2 Instance  DNS
  • 12. MIGRATION CHALLENGES> 150,000 users in active processing Foursquare is in US-EAST-1 (AWS)DNS hosting helps w/transitions Statsd helps show trends during testsFree time
  • 13. SCALESmart per-user resource allocationWeb Sites Reserved Instances: Size & CountMongo-based consistency enables multiple workersDNS Load Balancing
  • 14. PUSH NOTIFICATIONS FORNODE.JSMPNS module Windows Phone 7-8 Dev: Jeff Source: https://github.com/jeffwilcox/mpnsWNS module Windows 8 Dev: Tomek Source: https://github.com/WindowsAzure/wns
  • 15. OPEN SOURCE AZUREConsider Windows AzureMobile Services for your next app!Resources at:http://windowsazure.com/Check the OSS team out online:http://windowsazure.github.com/
  • 16. NOTES4th & Mayor is a trademark of Wilcox Digital, LLCThis presentation was created for a “Windows Phone Garage” event on3/14/2013Opinions are Jeff Wilcox’s alone.

×