Rob Tiffany Mobility Architect Microsoft WPH307 During this Session You have a Chance to Win a Windows Phone announcement Who Am I Architect in the Microsoft Mobility Center of Excellence ID: 504208
Download Presentation The PPT/PDF document "Connecting Windows Phones and Slates to ..." is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
Connecting Windows Phones and Slates to Windows Azure
Rob TiffanyMobility ArchitectMicrosoft
WPH307Slide2
During this Session
You
have a Chance to Win a Windows Phone
announcementSlide3
Who Am I?
Architect in the Microsoft Mobility Center of Excellence
Created the Microsoft Mobile Line of Business Accelerator for Windows Mobile
Writer :: Entrepreneur :: Former Embedded MVP :: Submariner :: Disk Jockey :: Blogger :: HikerSlide4
Agenda
What are we talking about today?
The State of Mobile | Wireless + Scalability | Performance
Introduction to Travel Scenario
Stepping through the Architecture
Windows Azure
SQL Azure
Worker Roles
Azure Table Storage
WCF
Services
Azure Queues
Windows
Phones + Slates
WCF Service Consumption
NoSQL
Object
Cache
LINQ
Change TrackingSlide5
The Current State of Wireless
Where’s the bandwidth?
AT&T: “We will deliver as much data over our network in the
first
5 weeks of 2015 as we did all year in 2010”
Congestion
factors
More subscribers with smartphones (data | photos | videos)
Spectrum + cell towers + antennas + home users
Mobile operator bandwidth caps
Latency
cell tower
backhaul network
internet final destination
back to the device
Mobile developers must acknowledge
and deal with these issues to ensure a delightful user experienceSlide6
Supporting Millions of Connected Devices
How do they scale?
Database(s) that nobody touches
Thousands of web servers on commodity
hardware
Replicated, horizontally-scaled
NoSQL
databases at the
edge;
Data
sharding
using small tables for fast access
Load-balancing at every tier
Hundreds of terabytes of data in an in-RAM, distributed cache
Compiling slow, web server scripting code into native
MapReduce
for parallel analysis of
“big data”Slide7
How will You Scale?
Windows Azure
SQL Azure is never touched by devices
Worker
Roles
replicate outbound data from SQL Azure to
NoSQL
Azure Table Storage
Worker Roles move inbound data from Azure
queues
to SQL Azure
Scale-out Windows Azure instances as needed
Wireless efficiency is realized via Web Roles that use of
REST + JSON WCF Services
Distributed caching is handled by
AppFabric
Caching
Devices cache data and work offlineSlide8
Puget Sound Executive Submarine ServiceTravel Scenario
Residents of Bainbridge Island have long employed a variety of methods of getting to work in Seattle ranging from ferries to sea planes. A new way of traversing the Sound has arrived
… it’s
underwater.
Two submarines carry passengers between Seattle and Bainbridge Island every day. Each luxury submarine carries eight passengers
with all
first-class seating plus free Wi-Fi and coffee.
Passengers arrive at their destination quickly due to a submerged
transit time
of just 15 minutes plus limousines waiting at the dock to whisk them to their office.Slide9
Architecture
Retrieve From
Database
Populate
Tables
Populate
Tables
Azure
Table
Worker
Role
Azure
Table
Azure
Table
Azure
Table
Azure
TableSlide10
demo
Worker Role Pulls Data from SQL Azure to Populate Azure Tables
Rob Tiffany
Mobility ArchitectMicrosoft Mobility Center of ExcellenceSlide11
Architecture
Read from Tables
with LINQ
Reads
Multichannel
Transports and Data Formats
HTTP + REST + JSON
Output
Caching
WCF
Web Role
Azure
Table
Azure
Table
Azure
Table
Azure
Table
Azure
TableSlide12
demo
WCF Services Retrieve and Cache Data from Azure Tables
Rob Tiffany
Mobility ArchitectMicrosoft Mobility Center of ExcellenceSlide13
Architecture
Reads
Multichannel
Transports and Data Formats
HTTP + REST + JSON
Serialize Object
Collections
to Isolated Storage
Output
Caching
WCF
Web Role
Mobile
Client
Offline
Data
Offline
Data
Offline
DataSlide14
demo
Windows Phone/Slate Retrieves Data from WCF Service and Stores in NoSQL Object Cache
Rob Tiffany
Mobility ArchitectMicrosoft Mobility Center of ExcellenceSlide15
Architecture
Write Serialized
Objects to Queues
Writes
Multichannel
Transports and Data Formats
HTTP + REST + JSON
WCF
Web Role
Azure
Queue
Mobile
Client
Azure
Queue
Mobile
Client
Mobile
Client
Azure
QueueSlide16
demo
Windows Phone/Slate Uploads Data to WCF Service Which Drops It
in an Azure Queue
Rob Tiffany
Mobility ArchitectMicrosoft Mobility Center of ExcellenceSlide17
Architecture
Read Serialized
Objects from
Queues
Insert
Objects
into
Database
Worker
Role
Azure
Queue
Azure
Queue
Azure
QueueSlide18
demo
Worker Role Retrieves Data from Azure Queues and Populates SQL Azure
Rob Tiffany
Mobility ArchitectMicrosoft Mobility Center of ExcellenceSlide19
Architecture
Write Serialized
Objects
to
Queues
Read Serialized
Objects from
Queues
Insert
Objects
into
Database
Retrieve from
Database
Populate
Tables
Populate
Tables
Read
from
Tables
with LINQ
Writes
Reads
Multichannel
Transports and Data Formats
HTTP + REST + JSON
Serialize Object
Collections
to Isolated Storage
Output
Caching
WCF
Web Role
Worker
Role
Azure
Table
Worker
Role
Azure
Table
Azure
Table
Azure
Queue
Mobile
Client
Mobile
Client
Offline
Data
Azure
Queue
Azure
Table
Azure
Table
Mobile
Client
Mobile
Client
Offline
Data
Offline
Data
Azure
Queue
DONESlide20
Call to Action
Learning + takeaways
What did you learn?
The reality of the
wireless world around
us
How to move to the next level of Internet Scale
How to build a complete device to cloud system
Learn even more at
http://
robtiffany.com
Download the tools at
http://
create.msdn.com
Takeaways
You should now be equipped with the building blocks and architectural blueprint needed to build large-scale cloud systems designed to support millions of devices.Slide21
Related Content
WPH304 | New Windows Phone Data Access Features
WPH301 | Deploying Windows Phone in the Enterprise
WPH305 | Internet Explorer 9 on Windows Phone
WPH311 | Lessons Learned about
App
Performance on
Windows Phone
WPH312 | What’s New for Windows Phone Development with
Silverlight
?
Find Me Later
at the Windows Phone Booth After this SessionSlide22
Windows Phone Related Content
Monday, May 16
Required Slide
Speakers,
please list the Breakout Sessions, Interactive Discussions, Labs, Demo Stations and Certification Exam that relate to your session. Also indicate when they can find you staffing in the TLC
.
WPH201: Windows Phone: What’s New?
WPH371-INT: Building
a Mobile Message Queue for Windows Phone
WPH312: What’s
New for Windows Phone Development with
Microsoft
Silverlight?
WPH302: Windows
Phone Productivity Scenarios with Microsoft Exchange Server 2010 and
Microsoft Office
365
WPH373: Meet
the Windows Phone Application
Platform
Engineering TeamSlide23
Windows Phone Related Content
Tuesday, May 17
WPH308: Multi-tasking
and Application Switching for Windows Phone
OSP312: Developing
Microsoft Office Business Solutions
that
Span
the
PC, Windows
Phone,
and the Web
WPH309: Enhanced
Push Notifications and Live Tiles
for
Windows
PhoneWPH303: Understanding the Windows Phone Development Tools
COS315: Building
Windows Phone
Applications with the
Windows
Azure PlatformSlide24
Windows Phone Related Content
Tuesday, May 17
WPH305: Internet
Explorer 9 on Windows Phone
OSP209 Building
Your First Windows Phone Application for
Microsoft
SharePoint 2010
WPH203: Understanding
Windows Phone Marketplace
WPH375-INT: Building
Multi-tasking Enabled Windows Phone ApplicationsSlide25
Windows Phone Related Content
Wednesday, May 18
WPH202: Windows
Phone at Microsoft
DEV317: Using
Microsoft Visual Basic to Build
Windows
Phone Applications
WPH310: Building
Your First Windows Phone Game with XNA
WPH374-INT: Hardcore
Windows Phone Development Questions
DEV205: Microsoft
Expression for Developers:
Demystifying
User Interface Design
WPH306: Building
Windows Phone Applications with Microsoft Silverlight and XNA
WPH304: New
Windows Phone Data Access FeaturesSlide26
Windows Phone Related Content
Thursday, May 19
WPH301: Deploying
Windows Phone in the Enterprise
DPR303: Developing
Enterprise-Grade Mobile Solutions
WPH307: Connecting
Windows Phones and Slates to Windows Azure
WPH372-INT: Windows
Phone
Marketplace: Interactive
WPH311: Lessons
Learned about Application Performance on Windows Phone
WPH311: Lessons
Learned about Application Performance on Windows Phone
SIM323: User
Identity and Authentication for Desktop and Phone ApplicationsSlide27
Windows Phone Resources
Questions? Demos
? The
latest phones?
Visit the
Windows
Phone Technical Learning Center
for demos
and more
…
Business IT resourcesblogs.technet.com/b/
windows_phone_4_it_pros
Developer r
esources
craete.msdn.com
Experience Windows Phone 7 on-line
and get a backstage passwww.windowsphone.comSlide28
Win a Windows Phone Contest
QUESTIONS?
Go to the
WPC Information Counter
at the TLC
HAT CONTEST*
How do you enter?
Enter by visiting the
Windows
Phone booth, accepting a
free
Windows
Phone
branded
hat
, and
wearing that hat
during the Event
How am I selected?
Each day of the event,
a
Windows Phone representative will
randomly select
up to 5 people who
are
observed wearing their
Windows
Phone branded
hat
SESSION CONTEST*
During each
Windows
Phone session the moderator will
post a question
;
t
he
first person to correctly answer the
question and is called
on by the moderator will
potentially win
* Restrictions
apply please see contest rules for eligibility and restrictions. Contest rules are displayed in the
Technical Learning Center
at the
WPH
info
counterSlide29
Resources
www.microsoft.com/teched
Sessions On-Demand & Community
Microsoft Certification & Training Resources
Resources for IT Professionals
Resources for Developers
www.microsoft.com/learning
http://microsoft.com/technet
http://microsoft.com/msdn
Learning
http://northamerica.msteched.com
Connect. Share. Discuss.Slide30
Complete an evaluation on
CommNet
and
enter to win!Slide31Slide32