Dan Rosanova Principal Program Manager Lead Microsoft Messaging

70 Slides8.68 MB

Dan Rosanova Principal Program Manager Lead Microsoft Messaging yesterday, today, and tomorrow

Azure Messaging Services Service Bus Reliable asynchronous message delivery Event Hubs Distributed data streaming Relay Secure two way communication without changes to your network

Azure Messaging by the numbers 23 Trillion 8,587,216 99.9984% Requests in last month in Event Hubs Requests per second average 24/7 50ms Success Rate Average Event Hubs send latency 28 PB 2.2 Million 5.4 Million 580 Billion Monthly data volume Message Queues and Topics in production Downloads of Service Bus Nuget package Message operations on Azure Service Bus Messaging per month

Event Hubs traffic growth since Integrate 2016 2.75 Trillion 23 Trillion

In the time I’m on this stage 23,185,483,2 00

And this is increasing: last 7 days 5,566,238,232,781 Requests 99.9995% Success Rate 28 million failures

And this is why

A brief history of messaging Financial Services Utilities & Telecom Teknekron Informatio n Bus MSMQ IBM MQ Series 1980s Logistics Insurance Healthcare ServiceBu s BizTalk TIBCO Government RabbitMQ Event Hubs Toda

The Messaging Landscape today In the Cloud On Premises

The Messaging Landscape today Software Services

The Messaging Landscape today Software Services In the Cloud On Premises

Messaging is changing By NASA, ESA, HEIC, and The Hubble Heritage Team (STScI/AURA) - [1], Public Domain, https://commons.wikimedia.org/w/index.php?curid 1569415

In the beginning

We used to purchase a messaging platform

It was a big commitment

That we had to live with

For a long. LONG time

A good pattern for people but maybe not for technology

The evolving Messaging Landscape Bidirectional Socket Relays “Enterprise” Messaging Logging & Big Data Streaming Simple Messaging

The evolving Messaging Landscape Bidirectional Socket Relays “Enterprise” Messaging Logging & Big Data Streaming Simple Messaging

Messaging is becoming more specialized The branches of the specialization or more focused on specific functional areas A single application or solution will likely use multiple “messaging” services Cloud messaging makes this all possible

This is not unique to messaging

Another shift in messaging Simple Messaging Enterprise Messaging On Premise Cloud

Software compared to PaaS

PaaS and Software PaaS (We do) OS Patching Runtime monitoring Load balancing Software patching Continual improvement NonPaaS (You do)

Software (Downloading Kafka)

Preconfigured “platforms” (Elastic EMR) aren’t true “PaaS”

True PaaS

Event Hubs

Distributed Data Streaming Event Hubs A streaming service designed to do low latency distributed stream ingress A partitioned consumer scale model A time retention buffer An elastic component in the middle of your chain

Where Telemetry & Streaming fit in Event producers Collection Ingress Stream Processing Long-term storage Fast Data Applications Legacy IOT (custom protocols) Devices IP-capable devices (Windows/Linux) Presentation / action PowerBI Dashboards Service bus IoT Cloud gateways (web APIs) Event hubs Big Data Azure DBs Search and query Stream processing HDInsight Slow Data Cortana Analytics Azure Storage Azure Data Lake Low-power devices (RTOS) Field gateways Devices to take action

Event Hubs conceptual architecture Azure Event Hub Partition 1 HTTP AMQP Partition 2 Consume r Group Event Receivers Event Producers Partition 3 Partition 4 Consume r Group 2

Or said another way

What do people really do with Event Hubs? App telemetry AdTech Sensor telemetry User data & clickstreams Gaming telemetry

Event Hubs and IoT Hub

Azure IoT Hub is the ideal service for IoT deployments Connect, monitor and manage billions of IoT assets. Ideal for IoT deployments proving path forward from POC to full scale, while maximizing IoT security Provide enhanced Establish bi-directional Provide device lifecycle security for IoT communication management solutions Device to cloud telemetry Cloud-to-device messages Durable command messages Per device authentication Device Management at scale Individual credentials Remotely maintain devices from the cloud Selectively revoke access rights Edge intelligence via Gateway SDK

Event Hub is the ideal service for telemetry ingestion from websites, apps and streams of big data Cloud-scale telemetry ingestion service that can log millions of events per second in near real time Stream millions of events per second Telemetry and logging Process real-time and batch on same stream Event Hub Capture* to load data to Azure *Capture used to be called Archive Fully-manage service Batch processing Ingest events with elastic scale Real time processing Accommodate variable load profiles Scale ingestion service Distributed streaming platform Handle volume, variety and velocity of data

Service Bus (Queues & Topics)

Messaging as a Service (MaaS) Queues & Topics Reliable asynchronous communication Rich features for temporal control Routing and filtering Transactions Convoys & Sessions (related messages with state)

The basics of a queue Sender sends message to queue Queue ACKs receipt Receiver connects to queue & retrieves message Receiver ACKs complete (or other action) Sender Receiver

Do I really need a slide for this here?

Topics & Subscriptions Sender only knows about Topic Receivers only know about Subscriptions Filters and Actions exist on Subscriptions type order Filter “type” “order” type quot e Subscription 1 Topic “type” “quote” Filter Subscription 2

Enterprise Messaging is a mature Most “Enterprise” customers will have some space Enterprise Messaging is moving to the Azure Service Bus is driving this move! cloud

Features of Service Bus Scheduled delivery Poison message handling ForwardTo Defer Sessions Batching Ordering Auto-delete on idle OnMessage Duplicate detection Filters Actions Transactions

It doesn’t get easier than this!

Logic Apps can use all of these features

How customers use Service Bus How we built it: ASOS shift from local monolith to built for Cloud online retail system Lead architect, Dave Green https://youtu.be/PigmI6APbQ8

Relay & Hybrid Connections

Cloud relayed communication Hybrid Connections & Relay Securely connect to on premises data and services from anywhere Load balance multiple sites behind a single endpoint Protect internal services by projecting a cloud endpoint Does not require any network changes

Where does relay fit When you have scenarios that are too complex or costly for VPN When you have to keep your data where it is United States European Union

Relay: Real-time communication proxy The basis of Hybrid Cloud Used to decouple Location Security VPN and Firewall constraints Client Firewall Firewall Service

How Relay works Service registers cloud endpoint Client connects to cloud endpoint Network magic happens Client Firewall Firewall Service

A network rendezvous Client A B C D Control Channel Service

Some real life examples RDP & SSH to on premises servers and devices More than one company does this They monitor and record sessions BizTalk 360 also uses Relay

What we’ve been up to

Recent progress New Hybrid Connections Native Java clients for Service Bus & Event Hubs GA Premium Service Bus Now in 19 regions (tell us where you need us) New portal experience

The road ahead

We’re busy! Encryption at rest (Event Hubs and Premium Service Bus) Managed Secure Identity: No more connection strings Bring your own key (BYOK) encryption at rest for premium products IP Filtering Vnet Completely new metrics pipeline

GeoDR: Coming to Event Hubs, Service Bus, and Relay this summer

Azure Messaging GeoDR: What it gives you Dual-region active-passive without all the client coordination work A single, stable, connection string / FQDN Explicit customer controlled failover User controlled RTO! Confidential - Microsoft

GeoDR – How it works You create an Alias – FQDN like namespace Select your primary region & NS name Select your secondary region & NS name We will copy all metadata between regions You call REST call to initiate failover We eject the old primary & break the metadata sync Alias connection string continues to work for send and receive Previous primary is left untouched Establish pair to a new secondary Confidential - Microsoft

In pictures Traffic Alias Primary Confidential - Microsoft Syn c Secondary

In pictures: Failover triggered Traffic Cmd No longer paired Confidential - Microsoft Alias Primary

In pictures: Pair to new secondary Traffic Alias New Secondary Confidential - Microsoft Syn c Primary

Caveats and subtleties This is a DR tool There is no state (i.e. messages) You need to decide when to failover You still need to decide how your compute will failover it’s own state if needed You decide what to do about messages in the old primary region There is no failback – it is a fail forward model We need to an empty namespace as the secondary Confidential - Microsoft

Q&A

One last thing

Back to top button