windows phone 7 in azure
TRANSCRIPT
![Page 1: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/1.jpg)
anytao We build apps.
Windows Phone in Azure
Wang Tao / 2011-12-17
![Page 2: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/2.jpg)
• 专注于.NET,架构师,微软MVP,TechEd讲师, 著《你必须知道的.NET》。
• http://weibo.com/anytao
• http://okr.me
王涛 若云兄弟
![Page 3: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/3.jpg)
Agenda
1 Phone + Cloud
2 关于Windows Azure
3 关于Windows Phone
4 基于推荐引擎的移动应用
5 最佳实践
![Page 4: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/4.jpg)
1 Phone + Cloud
2 关于Windows Azure
3 关于Windows Phone
4 基于推荐引擎的移动应用
5 最佳实践
![Page 5: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/5.jpg)
Phone + Cloud
• 趋势必行 – 数据、资源、复杂计算走向云端 – 应用、桌面深入移动端
• Cloud – 提供了更大的资源池 – 提供了一处服务、多处设备的可能 – 按需消费 – 自动管理 – 可用性
• Phone – 实现了更近的访问(LBS) – 实现了随时、随地
![Page 6: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/6.jpg)
Cloud = (数据软件 + 平台 + 基础设施) × 服务
Phone = (随时 + 随地) × 服务
服务
以无限应对有限
Phone + Cloud
![Page 7: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/7.jpg)
Windows Phone + Windows Azure
• PaaS(Not IaaS or SaaS) • 可伸缩性、高可靠性、安全性 • 支付系统 • 更多附加服务(ASC、Traffic Manager、Caching、
CDN) • 统一的工具和平台
– .NET/Silverlight/C#/VB .NET – Visual Studio / Expression Blend – 模拟器开发 – 易于迁移
![Page 8: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/8.jpg)
Azure for Device, not only for Windows Phone
![Page 9: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/9.jpg)
1 Phone + Cloud
2 关于Windows Azure
3 关于Windows Phone
4 基于推荐引擎的移动应用
5 最佳实践
![Page 10: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/10.jpg)
Windows Azure
![Page 11: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/11.jpg)
1 Phone + Cloud
2 关于Windows Azure
3 关于Windows Phone
4 基于推荐引擎的移动应用
5 最佳实践
![Page 12: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/12.jpg)
Windows Phone 7
![Page 13: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/13.jpg)
三分天下
WP7
iPhone
Android
![Page 14: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/14.jpg)
1 Phone + Cloud
2 关于Windows Azure
3 关于Windows Phone
4 基于推荐引擎的移动应用
5 最佳实践
![Page 15: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/15.jpg)
演示
海纳个性化应用推荐
www.haina123.com
![Page 16: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/16.jpg)
面临的问题
• 高计算量服务 • 随时骤增的资源需求 • 高性能 • 缓存 • 完全自动化的部署和配置管理 • 可伸缩性、可靠性、安全性保证 • 通知服务 • 成本控制 • 与既有服务的整合 • 多移动端平台:Windows Phone、iOS、Android、Html5 • 同一个平台、同一套工具
![Page 17: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/17.jpg)
基本场景
用户信息验证 计算推荐 发送通知
![Page 18: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/18.jpg)
Windows Azure提供的应对之道
• 身份认证
• 存储
• 服务和计算
• 通信
• 推送通知
• 其他
![Page 19: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/19.jpg)
基于推荐引擎的移动应用
通信
![Page 20: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/20.jpg)
通信
• 通信模型
– Phone-initiated
– Cloud-initiated
Push VS Pull
Client-Pull Server-Push
![Page 21: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/21.jpg)
Phone-initiated
• HTTP-based, request/response
• 框架选择(WCF, OData, WebRequest, etc.)
• 格式选择(SOAP, JSON, POX, etc.)
![Page 22: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/22.jpg)
Cloud-Initiated
• Push Notifications
– Phone和MSPN单连接
–带宽和电池友好
–无需运维
• 3种类型
– Raw – 发送消息给application
– Toast – 发送消息给user
– Tile – 更新Tile Title
![Page 23: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/23.jpg)
PN架构
Cloud Service
Windows Phone 7
MPNS
![Page 24: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/24.jpg)
演示
Push notification
![Page 25: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/25.jpg)
不同的Notifications
• Windows 8
– WNS, Windows Push Notification Service
• Windows Phone
– MPNS, Microsoft Push Notification Service
• iOS
– APNS, Apple Push Notification Service
• Android
– C2DM, Cloud To Device Messaging
![Page 26: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/26.jpg)
基于推荐引擎的移动应用
身份认证
![Page 27: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/27.jpg)
身份认证
• 使用既有身份服务
– LiveID、Facebook、OpenID
• ACS(Access Control Service)
• 自定义身份服务
– username + password
– token
![Page 28: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/28.jpg)
基于推荐引擎的移动应用
存储
![Page 29: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/29.jpg)
存储 • SQL Azure
–关系数据库
–高可用性
–通过服务管理
• Windows Azure Table – 非关系结构数据 – 横向扩展 – Odata
• Windows Azure Blob – 大文件 – Restful API
• Windows Azure Queue – 分布式队列
![Page 30: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/30.jpg)
SQL Azure (OData Service)
• 客户端发送数据到Web Role
• Web Role将数据存储在SQL Azure
Web Role
![Page 31: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/31.jpg)
Windows Azure Blobs: public blobs
• 客户端发送数据到Web Role
• Web Role将数据存储在Blobs
• 客户端直接获取Blob数据 Web Role
![Page 32: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/32.jpg)
Web Role和Worker Role
• Web Role有IIS
• Worker Role 没有
– DLL with Main()
• 都实现了RoleEntryPoint
![Page 33: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/33.jpg)
基于推荐引擎的移动应用
服务和计算
![Page 34: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/34.jpg)
工作场景
1. Web Role接受消息
2. Web Role将工作加入队列
3. Worker Role从队列获取并处理
4. Worker Role发送通知
MPNS
Worker Role
Web Role
![Page 35: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/35.jpg)
Multi-Instance
instance1 Instance1~X
HainaService
ContentService
InstanceX+1
Portal Site
Admin Site
Image Service
![Page 36: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/36.jpg)
CDN
CDN
CDN
CDN
CDN
CDN
CDN
![Page 37: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/37.jpg)
Traffic Manager
![Page 38: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/38.jpg)
1 Phone + Cloud
2 关于Windows Azure
3 关于Windows Phone
4 基于推荐引擎的移动应用
5 最佳实践
![Page 39: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/39.jpg)
UX
Design
Performance
Data
Storage
Service
Game
Network
XNA
MVVM
Marketplace
Ad
![Page 40: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/40.jpg)
让开发飞一会儿。。。
![Page 41: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/41.jpg)
(v1.3.0) http://watoolkitwp7.codeplex.com/
![Page 42: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/42.jpg)
Windows Azure Toolkits for Device
• WP7, http://watwp.codeplex.com/
• iOS, https://github.com/microsoft-dpe/wa-toolkit-ios
• Android, https://github.com/microsoft-dpe/wa-toolkit-android
Azure for Device, not only for Windows Phone
![Page 43: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/43.jpg)
1 Phone + Cloud
2 关于Windows Azure
3 关于Windows Phone
4 基于推荐引擎的移动应用
5 最佳实践
![Page 44: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/44.jpg)
anytao We build apps.
?
@anytao
more info at http://anytao.net/blog
![Page 45: Windows Phone 7 in azure](https://reader033.vdocuments.mx/reader033/viewer/2022052706/58f07c8c1a28ab28528b4621/html5/thumbnails/45.jpg)
anytao We build apps.
Thank you.