Service Bus Solution Patterns Clemens Vasters Principal Technical Lead Microsoft Corporation Abhishek Lal Senior Program Manager Microsoft Corporation.

Slides:



Advertisements
Similar presentations
Connected clients & continuous services Line of Business Application Event Aggregator Team Sharepoint Site … Household Appliance Phone, Tablet, PC Point.
Advertisements

What's New in Microsoft Deployment Toolkit 2012 Michael Niehaus Senior Program Manager Microsoft Corporation.
Cloudy Weather: How Secure Is the Cloud? David Aiken Windows Azure Microsoft Corporation.
Windows Intune: Cloud Based PC Management (Technical Overview) Elias Mereb Erdal Ozkaya MVP – Windows Expert-IT Pro WideTech Consulting FastLane – AP.
Customizing the User State Migration Tool Michael Niehaus Senior Program Manager Microsoft Corporation WCL322.
Building the Fastest SQL Servers Brent Ozar Microsoft Certified Solutions Master (MCSM) Brent Ozar PLF, LLC DBI328.
Abhishek Lal | Senior Program Manager, Azure Service Bus Miranda Luna | Product Manager, Windows Azure Mobile.
OSP206. Experience Office as it was meant to be… without the complexity of setting up servers.
Dev-Ops Best Practices on the Microsoft Stack Victor Mushkatin Group Program Manager Microsoft Corporation DEV363.
Inside Windows Azure Virtual Machines Vijay Rajagopalan Microsoft Corporation.
Deep Dive into Windows Azure Virtual Machines – From Cloud Vendor and Enterprise Perspective Vijay Rajagopalan Principal Lead Program Manager Microsoft.
Business Continuity Solutions for SQL Database* applications on Windows Azure Alexander (Sasha) Nosov Principal Program Manager Microsoft.
SIM346. General information about the software application.
The Busy Developer’s Guide to Virtualization Brian A. Randell Senior Consultant MCW Technologies AAP301.
Operating and Optimizing Multi-Tenant SaaS Applications in Windows Azure: An IT Pro Perspective Rainer Stropek CEO, Co-Founder software architects gmbh.
Making the most of Search in Microsoft SharePoint Online Corey Roth Applications Architect Infusion OSP338.
4/19/2017 7:47 PM DBI311 Microsoft SQL Server Data Tools: Database Development from Zero to Sixty Gert Drapers Principal Group Program Manager.
Configuring Kerberos for Microsoft SharePoint 2010 BI in 7 Steps (SQL Server 2012) Chuck Heinzelman Senior Program Manager – BPD CX Microsoft Corporation.
Enabling Disaster Recovery for Hyper-V Workloads Using Hyper-V Replica Shreesh Dubey Principal Group Program Manager Microsoft Corporation VIR302.
Application Integration Futures - The Road Map and What's Next on Windows Azure Bala SriramRajesh Ramamirtham Director of DevelopmentProgram Manager AZR207.
Building Windows 8 Apps for the Enterprise Robert Green Technical Evangelist Microsoft Corporation.
App Compat for Nerds: Understanding, Troubleshooting, and Fixing Busted Apps chris jackson principal consultant microsoft corporation WCL402.
Optimizing Microsoft SQL Server Analysis Services for Big Data Adam Jorgensen Microsoft Corporation.
Building, Running, and Managing Workflows on Windows Azure Jürgen Willis Group Program Manager Microsoft Corporation AZR321.
Accelerating the Power of the Cloud with Microsoft Private Cloud Fast Track and EMC Infrastructure Mike McGhee Solutions Engineer EMC Corporation WSV211.
Building, Running, and Managing Workflows on Windows Azure Jürgen Willis Group Program Manager Microsoft Corporation.
Integration Capabilities of the Adapter Pack BizTalk Server, Windows Azure Service Bus, Connect for services.
Supporting Microsoft Office in an Enterprise Environment Will Brandt Sr Technical Lead Microsoft Corporation OSP303.
Building Integration Solutions using BizTalk On-Premises and on Azure Javed SikanderRajesh Ramamirtham Group Program ManagerProgram Manager AZR211.
Preparing to Support Enterprise Applications on Windows Azure Eric Mattingly Service Engineer Microsoft Corporation AZR301.
Windows Azure Insights for the Enterprise IT Pro John Craddock Infrastructure and Identity Architect XTSeminars AZR301.
Best Practices and Lessons Learned: Private Cloud Deployment in the Enterprise Ryan Sokolowski Senior Consultant, Microsoft Consulting Services Microsoft.
Eamon O’Reilly & Ranganathan Srikanth Microsoft Corporation
Real World High Availability and Site Resilience Design Robert Gillies Solution Architect Microsoft Corporation EXL308.
Using the Windows Server 2012 Server Manager for Remote and Multi-Server Management Wale Martins Senior Program Manager Microsoft Corporation WSV335.
Karthik Bharathy Senior Program Manager Microsoft Corporation
Building SharePoint Online Applications in a Hybrid World Chris Johnson General Manager Provoke Solutions - Seattle OSP331.
Maggie Myslinska (Program Manager) Microsoft Corporation SESSION CODE: ASI204.
What's New with IIS 8 Performance, Scalability, and Security Robert McMurray Program Manager Microsoft Corporation WSV332.
AZR203. WA Storage Geo-Replication.
ASP.NET for Mobile and Tablet Development Damian Edwards Senior Program Manager Microsoft Corporation.
A Lap Around Windows Azure Active Directory Stuart Kwan Lead Principal Program Manager Microsoft Corporation SIA209.
What’s New with IIS 8: Open Web Platform for Cloud Shaun Eagan Senior Program Manager Microsoft Corporation Wade A. Hilmo Principal Development Lead Microsoft.
SDK 2.0 April 2013 SDK 2.1 July 2013 SDK 2.2 Oct 2013 SDK 2.3 April 2014 SB1.1 Preview—6/13 Interoperability with AMQP 1.0 Shared Access Signature.
Node.js & Windows Azure AZR326  JavaScript on the Server!  Event driven I/O server-side JavaScript  Not thread based, each connection uses only a.
Windows Azure Storage: How It Works, Best Practices, and Future Directions Jai Haridas Development Manager Microsoft Corporation AZR306.
Developing High Performing Parallel Application Services on Windows Azure Wen-ming Ye Sr. Technical Evangelist Microsoft Corporation.
Tips and Tricks: Effectively Manage Your SharePoint Farm with BI Kevin Donovan Program Manager Microsoft Corporation DBI306.
WCL328 - Windows Intune for the Enterprise David Nudelman Senior Consultant – Microsoft MVP OCSL - UK.
OSP201: Creating Self- Service BI Solutions with SharePoint Server 2010 Peter Myers.
App Controller Tabrez Mohammed Yuan Zheng Program Managers Microsoft Corporation MGT303.
Windows Azure IaaS and How It Works Corey Sanders Principal Program Manager Lead Microsoft Corporation AZR201.
AZR319: Monitoring and Managing Your Windows Azure Applications and Services Chandrika Shankarnarayan, Senior Program Manager Lead Vikram Desai, Senior.
Hybrid Will Rule: Options to Connect, Extend and Integrate Applications in Your Data Center and Windows Azure Yousef A. Khalidi Distinguished Engineer.
Cloud-Ready Data Services. cloud data services.
Deploying Private Clouds (Lessons Learned from the Windows Server 2012 TAP) Pat Fetty and Allen Stewart Principal Program Manager and Principal Group Program.
Advanced Microsoft SharePoint 2010 Upgrade Troubleshooting Shane Young – Todd Klindt SharePoint Nerds Rackspace OSP339.
Harnessing Big Data with Hadoop Dipti Sangani; Madhu Reddy DBI210.
Integrating SQL Server FileTables, Property Search, and FTS/Semantic Search Bob Beauchemin Developer Skills Partner SQLskills.
Demystifying Forefront Edge Security Technologies – TMG and UAG Richard Hicks Director – Sales Engineering Celestix Networks, Inc. SIA208.
App Deployment Options for Windows AZR205.
Examine information management in Cortana Intelligence
9/23/2018 1:04 AM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
Integrating Microsoft SharePoint 2010 with Windows Azure
11/16/ :06 AM © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
TechEd /28/ :27 AM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered.
TechEd /15/2019 8:08 PM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
TechEd /18/2019 2:30 AM © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
Linux on Windows Azure IaaS with Partner Demos
Sayed Ibrahim Hashimi Program Manager Microsoft Corporation
Presentation transcript:

Service Bus Solution Patterns Clemens Vasters Principal Technical Lead Microsoft Corporation Abhishek Lal Senior Program Manager Microsoft Corporation AZR317

Customer Use-Cases Access Control and Provisioning Messaging Channel Patterns Message Routing Patterns Composite integration patterns Device Integration Q&A 

Line of Business Application Event Aggregator Team Sharepoint Site … Household Appliance Phone, Tablet, PC Point of Sale Kiosk SaaS Cloud Service Solution Queues Topics Relays Notifications*  Bridges*

Customer Use cases

Retail Sites Windows Azure Retailer’s Data Center LOB Service Catalog Distribution Topic Orders Queue Relay

Windows Azure Monitoring Topic Job Queue Job Data Store (Blob)

Request Queue Windows Azure Reply Queues Controller Service Data Services Distribution Topic Session

Devices Scaling things out

Sub Topic Sub Control Partition Event Flow Control Flow Sub Event Store Analytics

Web Role (x2) Ingestion Topic P1 Event Store P1 Subscription Storage Writer Aggregator Sub Control System Px Fan-OutTopic Px/1 Sub Storage Reader Mobile App Service/Site Stats Topic

Ingestion Topic P1 Event Store P1 Ingestion Topic P2 Ingestion Topic Px Partitions Subscription Storage Writer Event Store P2 Storage Writer Event Store Px Storage Writer Aggregator Stats Topic Aggregator Analytics Store Storage Writer Subscription Real-Time Analytics Dashboard Subscription Control System Px Sub CS P1 Sub CS P2 Custom Gateway …

Sub Fan-Out Sub Topic Partition Control System

Provisionin g Device Allow List Registration with factory installed device-id Access Control Service Service Bus Service Id Sub Topic Queue Create Subscription Create “Service Id” Set “Listen” Permission Set “Send” Permission Partition Allocator Device Verification Per-device id and key Partition Queue URI Partition Subscription URI Per-device id and key Partition Queue URI Partition Subscription URI Factory installed device-id

Enterprise Integration Patterns by Gregor HohpeGregor Hohpe

Messaging Channel Patterns

S S Topic Sub

Create Topics and Subscriptions NamespaceManager namespaceManager = NamespaceManager.Create() namespaceManager.CreateTopic(“topicName"); namespaceManager.CreateSubscription(“topicName", “FirstSubscription"); namespaceManager.CreateSubscription(“topicName", “SecondSubscription"); namespaceManager.CreateSubscription(“topicName", “ThirdSubscription");

Publish Subscribe demo

S S Topic Sub

Create Subscriptions with Rules (Filters) TopicDescription mainTopic = namespaceManager.CreateTopic(“topicName"); namespaceManager.CreateSubscription(“topicName", “AuditSubscription"); namespaceManager.CreateSubscription(“topicName", “Category1Subscription", new SqlFilter(“Category = 1")); namespaceManager.CreateSubscription(“topicName", “CategoryNot1Subscription", new SqlFilter(“Category <> 1")); BrokeredMessage myMessage = new BrokeredMessage(); myMessage.Properties.Add(“Category”, 1); or myMessage.Properties.Add(“Category”, 2); or myMessage.Properties.Add(“Category”, 3);

demo Content-Based Router

S S Topic Sub

Create Rules (with SQL Filters) TopicDescription mainTopic = namespaceManager.CreateTopic(“topicName"); namespaceManager.CreateSubscription(“topicName", “AuditSubscription"); namespaceManager.CreateSubscription(“topicName", "FirstSubscription", new SqlFilter("Address LIKE '%First%'")); namespaceManager.CreateSubscription(“topicName", “SecondSubscription", new SqlFilter("Address LIKE '%Second%'")); BrokeredMessage myMessage = new BrokeredMessage(); myMessage.Properties.Add(“Address”, “First”); or myMessage.Properties.Add(“Address”, “Second”); or myMessage.Properties.Add(“Address”, “First,Second”);

demo Recipient List

Message Routing Patterns

Order 1 Item1 Order 1 Item1 Order 1 Item2 Order 1 Item2 Order2 Item11 Order2 Item11 Order2 Item12 Order2 Item12 Order2: Item 11 Item 12 Order2: Item 11 Item 12 Order 1: Item1 Item2 Order 1: Item1 Item2 Topic Order Processing

Queue Ordered Received Queue Ordered Processing Queue

Processing Sessions QueueDescription queueDescription = new QueueDescription(queueName) {RequiresSession = true }; // Specify Session Id when sending the message BrokeredMessage message = new BrokeredMessage(); message.SessionId = sessionId; // Accepting session and reading messages MessageSession sessionRcv = sessionQueueClient.AcceptMessageSession(TimeSpan.FromSeconds(10)); while ((receivedMessage = sessionRcv.Receive(TimeSpan.FromSeconds(10))) != null) { ProcessMessage(receivedMessage); } // Close Session after all messages have been processed sessionRcv.Close();

Using Session State // Extracting sessions state Stream stream = messageSession.GetState(); if (stream != null) { using (var reader = new StreamReader(stream)) { state = reader.ReadToEnd(); } } // Modify session state using (var stream = new MemoryStream()) { using (var writer = new StreamWriter(stream)) { writer.Write(state); writer.Flush(); stream.Position = 0; messageSession.SetState(stream); } messageSession.Close();

Queue

Deferring messages if (sessionState.GetNextSequenceId() != messageId) { Console.WriteLine("Defering message: Category {0}, Message sequence {1}", session.SessionId, messageId); // Deferring the message, and setting sessions state. // Note: Use transaction scope to ensure consistency message.Defer(); sessionState.AddOutOfSequenceMessage(messageId, message.SequenceNumber); SetState(session, sessionState); } … while (sessionState.GetNextOutOfSequenceMessage() != -1) { //Call back defered messages Console.WriteLine("Calling back for deferred message: sequence {0}", sessionState.GetNextSequenceId()); receivedMessage = receiver.Receive(sessionState.GetNextOutOfSequenceMessage()); ProcessMessage(receivedMessage, ref sessionState, receiver); }

demo Resequencer

Composite integration patterns

Queue Order 1: Item1 Item2 Order 1: Item1 Item2 Order Handling Order Processing Splitter Topic Dept B Dept A Dept C Order Processing Topic Dept B Dept A Dept C Queue Order Aggregating Order2 Inventory System

Scattering Topic Vendor B Vendor A Vendor C Queue Gathering

Customer Use-Cases Access Control and Provisioning Messaging Channel Patterns Message Routing Patterns Composite integration patterns Device Integration Q&A 

Meetwindowsazure.com DOWNLOAD Windows Azure Windowsazure.com/ teched Hands-On Labs

Connect. Share. Discuss. Learning Microsoft Certification & Training Resources TechNet Resources for IT Professionals Resources for Developers

Required Slide Complete an evaluation on CommNet and enter to win!

Scan the Tag to evaluate this session now on myTechEd Mobile