1 / 29

Patterns & Practices for Composing Cloud Services

Patterns & Practices for Composing Cloud Services. Haishi Bai Technical Evangelist, Windows Azure 3-526. Agenda. The Starting Point Sprint 1: Relay Sprint 2: Claim-based Identity Sprint 3: Loose-coupling Sprint 4 : Integration Looking ahead. The Starting Point. Server. Client.

presta
Download Presentation

Patterns & Practices for Composing Cloud Services

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Patterns & Practices for Composing Cloud Services Haishi Bai Technical Evangelist, Windows Azure 3-526

  2. Agenda • The Starting Point • Sprint 1: Relay • Sprint 2: Claim-based Identity • Sprint 3: Loose-coupling • Sprint 4: Integration • Looking ahead

  3. The Starting Point Server Client Views Data Records View Model • Local SQL Server Database (mocked) • WCF Server • WPF Client • Windows Authentication • MVVM Repositories Public Entities Private Entities Public Entities TCP Service Proxy

  4. Sprint 1 Challenges Web Client HTML Views View Model Server Client Public Entities Views Data Records View Model API Repositories Public Entities Public Entities Private Entities Public Entities TCP Service Proxy Proxy ? Public Entities

  5. Integration Strategies • Data • Shared data source • Import/export • Data sync • Connectivity • Expose public endpoints • Windows Azure Virtual Network • Windows Azure Service Bus Relay • Brokered • Middleware • Message-based Integration

  6. Service Bus Relay • Securely expose on-premises WCF services to public • No firewall or network infrastructure changes

  7. DEMO: Service Bus Relay

  8. Sprint 1 Architecture Web Client HTML Views View Model Server Client Public Entities Views Data Records View Model API Repositories Public Entities Public Entities Private Entities Public Entities TCP Service Proxy Proxy Relay Public Entities Public Entities Relay Endpoint

  9. Sprint 2 Challenges Web Client HTML Views View Model Server Client Public Entities Views Data Records View Model API Repositories Public Entities Public Entities Private Entities Public Entities TCP Service Proxy Proxy Relay Public Entities Public Entities Relay Endpoint ?

  10. Windows Azure Active Directory • Provide access control for your applications • Single sign-on across your applications • Social connections across the enterprise • Integrate with you on-premises AD App App 2 WAAD Tenant Login Page 4 WIF Application WIF Application 3 1 AD

  11. DEMO: Windows Azure Active Directory

  12. Sprint 2 Architecture Web Client HTML Views View Model Server Client Public Entities Views Data Records View Model API Repositories Public Entities Public Entities Private Entities Public Entities TCP Service Proxy Proxy Relay Public Entities Public Entities Relay Endpoint Directory Sync WAAD

  13. Sprint 3 Challenge Web Client HTML Views View Model Server Client Public Entities Views Data Records View Model API Repositories Public Entities Public Entities Private Entities Public Entities TCP Service Proxy Proxy Relay Public Entities Public Entities Relay Endpoint Directory Sync WAAD

  14. Loose Coupling Pattern with Service Bus • Brokered message communication • Loose-coupling among systems • Asynchronous pattern • Workload leveling

  15. DEMO: Service Bus Queue

  16. Sprint 3 Architecture Web Client HTML Views View Model Server Client Public Entities Views Data Records View Model API Repositories Public Entities Public Entities Private Entities Public Entities TCP Service Proxy Proxy Relay Order Queue Public Entities Public Entities Relay Endpoint Order Taker Directory Sync WAAD

  17. Sprint 4 Challenge Web Client HTML Views View Model Server Client Public Entities Views Data Records View Model API Repositories Public Entities Public Entities Private Entities Public Entities TCP Service Proxy Proxy Relay Order Queue Public Entities Public Entities Relay Endpoint Order Taker Directory Sync WAAD

  18. DEMO: AMQP

  19. Sprint 4 Architecture Web Client HTML Views View Model Server Client Public Entities Views Data Records View Model API Repositories Public Entities Public Entities Private Entities Public Entities TCP Service Proxy Proxy AMQP Relay Order Queue Public Entities Public Entities Relay Endpoint Order Taker Directory Sync WAAD

  20. Message-based Integration Patterns Pipes and filters Message router Message translator Message endpoint Point-to-point channel Publish-subscribe channel Data type channel Invalid message channel Dead letter channel Guaranteed delivery Channel adapter Messaging bridge Message bus Command message Document message Event message Request-reply Return address Correlation Sequence Expiration Format indicator Content based router Message filter Dynamic router Recipient list Splitter Aggregator Sequencer Composed message processor Scatter-gather Routing slip Process manager Message broker Envelop wrapper Content enricher Content filter Claim check Normalizer Canonical data model Message gateway Messaging mapper Transactional client Polling consumer Event-driven consumer Competing consumers Message dispatcher Selective consumer Durable subscriber Idempotent receiver Service Activator Control bus Detour Wire tap Message history Message store Smart proxy Test message Channel purger

  21. Sprint 5 Architecture Web Client HTML Views BLOB View Model Server Client Public Entities Views Data Records View Model API CDN Repositories Cache Public Entities Public Entities Private Entities Public Entities TCP Service Proxy Proxy Relay Order Queue Public Entities Public Entities Relay Endpoint Order Taker Directory Sync WAAD

  22. Sprint 6 Architecture Server Web Client Data Sync HTML Views Repositories BLOB View Model Server Client Service Public Entities Views Data Records View Model API CDN Repositories Cache Public Entities Public Entities Private Entities Public Entities Order Taker TCP Service Proxy Proxy Relay Order Queue Public Entities Public Entities Relay Endpoint Order Taker Directory Sync WAAD

  23. Sprint 7 Architecture Server Web Client Server HTML Views Repositories BLOB View Model Client Service TCP Public Entities Views View Model API LB CDN Cache Public Entities Public Entities Order Taker Proxy Proxy Mobile Order Queue Mobile WAAD

  24. Sprint 8 Architecture Server Web Client Web Client Server HTML Views Repositories BLOB View Model Client Service TCP Public Entities Views View Model API LB CDN Cache Public Entities Public Entities Order Taker Proxy Proxy Mobile Office Order Queue Mobile BizTalk WAAD Accounting

  25. Epilogue: Recipe-VVM • R – Repository • E – Entity • C – Claim-based architecture • I – Action API and Query API • PE – Public Entity • V – View • VM – View Model

  26. Resources • www.bing.com • www.windowsazure.com • msdn.microsoft.com @HaishiBai2010 blog.haishibai.com @trontron

  27. Required Slide *delete this box when your slide is finalized Your MS Tag will be inserted here during the final scrub. Evaluate this session • Scan this QR codeto evaluate this session and be automatically entered in a drawing to win a prize!

More Related