• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
My cloud + Windows Phone app experience
 

My cloud + Windows Phone app experience

on

  • 931 views

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.

Statistics

Views

Total Views
931
Views on SlideShare
827
Embed Views
104

Actions

Likes
1
Downloads
1
Comments
0

1 Embed 104

https://twitter.com 104

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    My cloud + Windows Phone app experience My cloud + Windows Phone app experience Presentation Transcript

    • 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 client applicationLogging and StatisticsMigration challengesScalePush Notifications for Node.js / Azure open source
    • 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
    • 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
    • BILLS
    • AZURE PORTAL ROCKS!
    • 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)
    • 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
    • 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
    • CONNECTING FROM THECLIENT APPHttpClient NuGet/PCLRetry policies, handling HTTP statusGZip CompressionRestSharpJSON.NETCaching technology & strategies; AgFx
    • 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
    • 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
    • SCALESmart per-user resource allocationWeb Sites Reserved Instances: Size & CountMongo-based consistency enables multiple workersDNS Load Balancing
    • 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
    • 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/
    • 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.