MY CLOUD +WINDOWS PHONE    @jeffwilcox                 Developer, 4th & Mayor    EXPERIENCE
JEFF’S TOPICSMy cloud environment$$$The cloud APIs I exposeStaging and Production EnvironmentsConnecting to the cloud from...
MY CLOUD ENVIRONMENTAmazon Web Services                           Windows Azure   DNS (Route 53)                         ...
MY CLOUD ENVIRONMENTAmazon Web Services                           Windows Azure   DNS (Route 53)                         ...
BILLS
AZURE PORTAL ROCKS!
CLOUD APISMy Services                                                  Storage-hosted services Push notification connecti...
STAGING & PRODUCTIONDebug builds target my staging environmentStaging uses modified JSON values (keys, certificates, etc.)...
AUTHENTICATION, KEYS,CERTS…Environment variable MODE assign staging/production valueEnvironment variable APP assigns servi...
CONNECTING FROM THECLIENT APPHttpClient NuGet/PCLRetry policies, handling HTTP statusGZip CompressionRestSharpJSON.NETCach...
LOGGING & STATISTICSLogs                                     Stats   Detailed                                Statsd, Gra...
MIGRATION CHALLENGES> 150,000 users in active processing   Foursquare is in US-EAST-1 (AWS)DNS hosting helps w/transitions...
SCALESmart per-user resource allocationWeb Sites Reserved Instances: Size & CountMongo-based consistency enables multiple ...
PUSH NOTIFICATIONS FORNODE.JSMPNS module Windows Phone 7-8 Dev: Jeff Source: https://github.com/jeffwilcox/mpnsWNS modu...
OPEN SOURCE AZUREConsider Windows AzureMobile Services for your next app!Resources at:http://windowsazure.com/Check the OS...
NOTES4th & Mayor is a trademark of Wilcox Digital, LLCThis presentation was created for a “Windows Phone Garage” event on3...
My cloud + Windows Phone app experience
Upcoming SlideShare
Loading in...5
×

My cloud + Windows Phone app experience

703

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.

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

No Downloads
Views
Total Views
703
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
6
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

My cloud + Windows Phone app experience

  1. 1. MY CLOUD +WINDOWS PHONE @jeffwilcox Developer, 4th & Mayor EXPERIENCE
  2. 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. 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. 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. 5. BILLS
  6. 6. AZURE PORTAL ROCKS!
  7. 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. 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. 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. 10. CONNECTING FROM THECLIENT APPHttpClient NuGet/PCLRetry policies, handling HTTP statusGZip CompressionRestSharpJSON.NETCaching technology & strategies; AgFx
  11. 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. 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. 13. SCALESmart per-user resource allocationWeb Sites Reserved Instances: Size & CountMongo-based consistency enables multiple workersDNS Load Balancing
  14. 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. 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. 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.
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×