SlideShare a Scribd company logo
1 of 48
A guide through the Azure Messaging services
Eldert Grootenboer
Eldert Grootenboer
@egrootenboer
Messaging?
Messaging in Azure
Event Hubs
Streaming
data
Service Bus
Enterprise
messaging
Event Grid
Cross cloud
reactive
eventing
Storage Queues
Simple task queues
Relay
Secure
sockets
without
changes to
your
network
Why so many choices?
Command
Report
Measurement
Job
Query
Handover
Transfer
Update
Assignment
Request
Notification
Trace
Facts
Command Report
Measurement
Job
Query
Handover
Transfer
Update
Assignment
Request
Notification
Trace
Intents
EventingMessaging
Events
Independent
Report State Change
Actionable
Time Ordered
Context Partitioned
Report Condition
Analyzable
Discrete Series
EventingMessaging
Let’s have a look at the services
Simple Queues
Storage queues are task queues
Coordinate work across compute (VMs, Functions, etc.)
Low cost
Pay as you go
Easy to use
Messages are generally homogeneous
Unlimited number of queues
Unlimited number of concurrent connections
Maximum queue size 500TB
Maximum message size 64KB
Few features
Few features
No headers/metadata
No pub/sub
No Тime To Live
No scheduling
No dead-letter queue
Peeking no more than 32 messages only
No de-duplication
7 days retention period
No transactional guarantees
A simple queue
Sender sends message to queue
Queue ACKs receipt
Receiver connects to queue & retrieves message
Receiver ACKs complete (or other action)
Enterprise Messaging
Enterprise Messaging as a Service
Queues & Topics
Reliable asynchronous communication
Rich features for temporal control
Message headers
Routing and filtering
Convoys & Sessions (related messages with state)
Features of Service Bus
Scheduled delivery
Time To Live
ForwardTo
Defer
Sessions
Batching
Ordering
Auto-delete on idle
OnMessage
Duplicate detection
Actions
Transactions
Poison message handling
Features of Service Bus Premium
Dedicated resources
Geo-DR
Availability Zones
Virtual Network Service Endpoints
Topics & Subscriptions
Sender only knows about Topic
Receivers only know about Subscriptions
Filters and Actions exist on Subscriptions
Topic
Subscription 1
Subscription 2
type=order
type=quote
Filter
Filter
“type” = “order”
“type” = “quote”
Where does Service Bus fit in?
Decoupling and providing durability with transactional consistency
Queue
Push based publish-subscribe event routing
What is an event?
Something happened
Notification
Triggers a reaction
Based on facts
Can be series based or discrete
IoTHub
BlobStorage
ResourceGroups
AzureSubscriptions
EventHubs
CustomTopics
Storage(GPv2)
AzureFunctions
LogicApps
AzureAutomation
WebHooks
EventHubs
Container Registry
StorageQueues
DatalakeStore
Azure Event Grid
Concepts
Events: what happened
Event Publishers: where it took place
Topics: where publishers send events
Event Subscriptions: how you receive events
Event Handlers: the app or service reacting to the event
Events
Trigger a functionto run
CognitiveAPI when a file
is added to storage
Use a function to run a
compliance checkon each
newly created SQL database
Tag newly provisioned VMs
with AzureAutomation and
add to metadata store
Use custom“drive start” and
“driveend” events to log vehicle
performancemetrics
What is Event Grid For?
"topic": "/subscriptions/{id}/resourceGroups/{rg}/providers/Microsoft.Storage/storageAccounts/{storageacc}",
"subject": "/blobServices/default/containers/monitored/blobs/blob.json",
"eventType": "Microsoft.Storage.BlobCreated",
"eventTime": "2017-09-20T01:12:35.8066557Z",
"id":"9ac0de1a-001e-00da-23ad-311d4a06bb2f",
"data":{
"api":"PutBlob",
"clientRequestId": "9ac0de1a-9da0-11e7-9a3b-51cc40a2ca27",
"requestId": "9ac0de1a-001e-00da-23ad-311d4a000000",
"eTag":"0x9AC0FC4ADA5997D",
"contentType": "application/json",
"contentLength": 268,
"blobType": "BlockBlob",
"url":"https://{storageacc}.blob.core.windows.net/monitored/blob.json",
"sequencer": "00000000000019200000000000F12B37",
"storageDiagnostics": {
"batchId": "9ac0de1a-e1a1-44c5-a0a1-a66b2a191fc4“
}
What does an Event look like?
Publishing custom events
Custom Topics
Topic: <Name of Topic>
Subject: <whatever you choose>
EventType: <whatever you choose>
mytopic.westus2-1.eventgrid.azure.net
sub1
sub2
mytopic
Topic:mytopic.westus2-1.eventgrid.azure.net
Subject: /products/beverages
EventType: skuCreated
Topic:mytopic.westus2-1.eventgrid.azure.net
Subject: /products/snacks
EventType: skuUpdated
Publisher
The challenge with Custom Topics
Having many topics forces you to do routing
This is what Grid was made for
There is a better way!
sub1
sub2
mytopic2
sub1
sub2
mytopic3
sub1
sub2
mytopic4
sub1
sub2
mytopic1
Publisher
Event Domains
All events to single endpoint
Sender sets topic
Subscribers are authenticated via
AAD (cross org support)
Subscribers identity not
required to be Azure
Entire service can be
white labeled
Advanced Filters
Works on the data portion of the event
Supports ten levels of nesting
Supports one or more values
Up to 10 advanced filters can be combined in
OR
Numbers
NumberLessThan
NumberLessThanOrEquals
NumberGreaterThan
NumberGreaterThanOrEquals
NumberIn–thevaluefordata.keyequalsavalueintheset[0,2.08,3.14]
NumberNotIn–thevaluefordata.keyisnotintheset[1,11,112,1124]
Strings
StringContains–thevaluefordata.keycontains“the”
StringIn–thevaluefordata.keyequalsavalueintheset[“small”,“brown”,“fox”]
StringNotIn–thevaluefordata.keyequalsavalueintheset[“jumped”,“over”,“the”]
StringBeginsWith–thevaluefordata.keybeginswith“lazy”
StringEndsWith–thevaluefordata.keyendswith“dog”
Boolean
BoolEquals
Engineered for scale and reliability
Retry intervals
10 seconds
30 seconds
1 minute
5 minutes
10 minutes
30 minutes
1 hour
Once an hour up to 24 hours
Defaults: 30 delivery attempts / 24 hours
Dead-lettering
Requires Storage account + container
Dead-lettered events stored as blobs
Storage
Queues
Flexible
Interoperability
Multi-Cloud
Solutions
IoT Hub
Blob Storage
Resource Groups
Azure Subscriptions
Event Hubs
Custom Topics
Storage (GPv2)
Container Registry
Service Bus
Azure Event Grid + CNCF CloudEvents
Azure Functions
Logic Apps
Azure Automation
WebHooks
Event Hubs
Distributed log streaming
Records a stream
Recording moves forward only
You can play the tape over and over again
Can play from anywhere on the tape
FastFwd or Rewind then Play
Multiple channels with different data
Event streaming
Event Hubs conceptual architecture
Kafka
HTTP
AMQP
Where does data streaming fit in?
Cloud gateways
(web APIs)
Field
gateways
Applications
LegacyIOT
(customprotocols)
Devices
IP-capabledevices
(Windows/Linux)
Low-powerdevices
(RTOS)
Search and query
Cortana Analytics
PowerBI Dashboards
Devices to take action
Event Hubs Capture: slow data stream
Policy based push to own storage
Avro format
Does not impact throughput
Better batching and archival scenarios
Offloads batch processing from your real-time stream (no pressure drop)
How does Capture work?
How are Event Hubs and Kafka similar?
Both use partitioned consumer
Partitions are independent
Both use a client side cursor concept
Both can scale to very high workloads
Conceptually they are nearly the same
Azure Event Hubs for Apache Kafka™
Kafka 1.0 compatible endpoint backed by Event Hubs
Use your existing Kafka application & tools with Event Hubs
Only need to change your connection string
All defaults supported
Cloud relayed sockets
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 in?
When you have scenarios that are too complex or costly for VPN
When VNET integration is not possible
When you have to keep your data where it is
How does it work?
Service registers cloud endpoint
Client connects to cloud endpoint
Network magic happens
Relay as a gateway
Can front multiple service instances
Round robin controlled in Relay service
Sticky sessions
ServiceInstances
Almost done
Serverless Streaming Data Enterprise
Key Takeaways
Segment Simple Queuing Eventing PubSub Streaming Enterprise Messaging Cloud Socket
Product Storage Queues Event Grid Event Hubs Service Bus Relay & HC
What do you
care about
• Communication
within an app
• Individual
message
• Queue (polling)
semantics
• Easy to use
• Pay as you go
• Communication
between apps /
orgs
• Individual
message
• Push semantics
• Filtering and
routing
• Pay as you go
• Fan out
• Many messages in a
Stream (think in MBs)
• Ease of use and
operation
• Low cost
• Fan in
• Strict ordering
• Works with other
tools
• Instantaneous
consistency
• Strict ordering
• JMS
• Non-repudiation &
Security
• Geo-Replication &
Availability
• Rich features (de-dupe,
scheduling, etc.)
• Raw TCP socket
that can traverse
firewalls
• Load balanced
live traffic
What you
care less
about
• Ordering of
messaging
• Instantaneous
consistency
• Ordering of
messaging
• Instantaneous
consistency
• Individual message
semantics
• Server-side cursor
• Only Once
• Cost
• Simplicity
• Buffered
messaging
• Queue semantics
Focus point • Single partition
lightweight
queue
• Reliable fan out
push at massive
scale
• High scale distributed
log
• Highly indexed full
featured message broker
• High density TCP
tunneling
Hybrid
@egrootenboer
eldert@eldert.net
https://blog.eldert.net
Thank You

More Related Content

What's hot

Building event-driven Microservices with Kafka Ecosystem
Building event-driven Microservices with Kafka EcosystemBuilding event-driven Microservices with Kafka Ecosystem
Building event-driven Microservices with Kafka EcosystemGuido Schmutz
 
Bridge to Cloud: Using Apache Kafka to Migrate to AWS
Bridge to Cloud: Using Apache Kafka to Migrate to AWSBridge to Cloud: Using Apache Kafka to Migrate to AWS
Bridge to Cloud: Using Apache Kafka to Migrate to AWSconfluent
 
Confluent Cloud for Apache Kafka® | Google Cloud Next ’19
Confluent Cloud for Apache Kafka® | Google Cloud Next ’19Confluent Cloud for Apache Kafka® | Google Cloud Next ’19
Confluent Cloud for Apache Kafka® | Google Cloud Next ’19confluent
 
Why Cloud-Native Kafka Matters: 4 Reasons to Stop Managing it Yourself
Why Cloud-Native Kafka Matters: 4 Reasons to Stop Managing it YourselfWhy Cloud-Native Kafka Matters: 4 Reasons to Stop Managing it Yourself
Why Cloud-Native Kafka Matters: 4 Reasons to Stop Managing it YourselfDATAVERSITY
 
Kafka summit apac session
Kafka summit apac sessionKafka summit apac session
Kafka summit apac sessionChristina Lin
 
Building a Secure, Tamper-Proof & Scalable Blockchain on Top of Apache Kafka ...
Building a Secure, Tamper-Proof & Scalable Blockchain on Top of Apache Kafka ...Building a Secure, Tamper-Proof & Scalable Blockchain on Top of Apache Kafka ...
Building a Secure, Tamper-Proof & Scalable Blockchain on Top of Apache Kafka ...confluent
 
Solutions for bi-directional integration between Oracle RDBMS & Apache Kafka
Solutions for bi-directional integration between Oracle RDBMS & Apache KafkaSolutions for bi-directional integration between Oracle RDBMS & Apache Kafka
Solutions for bi-directional integration between Oracle RDBMS & Apache KafkaGuido Schmutz
 
Building a real-time data processing pipeline using Apache Kafka, Kafka Conne...
Building a real-time data processing pipeline using Apache Kafka, Kafka Conne...Building a real-time data processing pipeline using Apache Kafka, Kafka Conne...
Building a real-time data processing pipeline using Apache Kafka, Kafka Conne...Paul Brebner
 
Achieve Sub-Second Analytics on Apache Kafka with Confluent and Imply
Achieve Sub-Second Analytics on Apache Kafka with Confluent and ImplyAchieve Sub-Second Analytics on Apache Kafka with Confluent and Imply
Achieve Sub-Second Analytics on Apache Kafka with Confluent and Implyconfluent
 
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB) - Friends, Enemies or ...
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB) - Friends, Enemies or ...Apache Kafka vs. Integration Middleware (MQ, ETL, ESB) - Friends, Enemies or ...
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB) - Friends, Enemies or ...confluent
 
Ten reasons to choose Apache Pulsar over Apache Kafka for Event Sourcing_Robe...
Ten reasons to choose Apache Pulsar over Apache Kafka for Event Sourcing_Robe...Ten reasons to choose Apache Pulsar over Apache Kafka for Event Sourcing_Robe...
Ten reasons to choose Apache Pulsar over Apache Kafka for Event Sourcing_Robe...StreamNative
 
Bank of China Tech Talk 2: Introduction to Streaming Data and Stream Processi...
Bank of China Tech Talk 2: Introduction to Streaming Data and Stream Processi...Bank of China Tech Talk 2: Introduction to Streaming Data and Stream Processi...
Bank of China Tech Talk 2: Introduction to Streaming Data and Stream Processi...confluent
 
Kafka for Real-Time Replication between Edge and Hybrid Cloud
Kafka for Real-Time Replication between Edge and Hybrid CloudKafka for Real-Time Replication between Edge and Hybrid Cloud
Kafka for Real-Time Replication between Edge and Hybrid CloudKai Wähner
 
Neha Narkhede | Kafka Summit London 2019 Keynote | Event Streaming: Our Cloud...
Neha Narkhede | Kafka Summit London 2019 Keynote | Event Streaming: Our Cloud...Neha Narkhede | Kafka Summit London 2019 Keynote | Event Streaming: Our Cloud...
Neha Narkhede | Kafka Summit London 2019 Keynote | Event Streaming: Our Cloud...confluent
 
Kafka as your Data Lake - is it Feasible?
Kafka as your Data Lake - is it Feasible?Kafka as your Data Lake - is it Feasible?
Kafka as your Data Lake - is it Feasible?Guido Schmutz
 
Elastically Scaling Kafka Using Confluent
Elastically Scaling Kafka Using ConfluentElastically Scaling Kafka Using Confluent
Elastically Scaling Kafka Using Confluentconfluent
 
Introduction to Stream Processing
Introduction to Stream ProcessingIntroduction to Stream Processing
Introduction to Stream ProcessingGuido Schmutz
 
Building event-driven (Micro)Services with Apache Kafka Ecosystem
Building event-driven (Micro)Services with Apache Kafka EcosystemBuilding event-driven (Micro)Services with Apache Kafka Ecosystem
Building event-driven (Micro)Services with Apache Kafka EcosystemGuido Schmutz
 
KSQL: Open Source Streaming for Apache Kafka
KSQL: Open Source Streaming for Apache KafkaKSQL: Open Source Streaming for Apache Kafka
KSQL: Open Source Streaming for Apache Kafkaconfluent
 
Real time data processing and model inferncing platform with Kafka streams (N...
Real time data processing and model inferncing platform with Kafka streams (N...Real time data processing and model inferncing platform with Kafka streams (N...
Real time data processing and model inferncing platform with Kafka streams (N...KafkaZone
 

What's hot (20)

Building event-driven Microservices with Kafka Ecosystem
Building event-driven Microservices with Kafka EcosystemBuilding event-driven Microservices with Kafka Ecosystem
Building event-driven Microservices with Kafka Ecosystem
 
Bridge to Cloud: Using Apache Kafka to Migrate to AWS
Bridge to Cloud: Using Apache Kafka to Migrate to AWSBridge to Cloud: Using Apache Kafka to Migrate to AWS
Bridge to Cloud: Using Apache Kafka to Migrate to AWS
 
Confluent Cloud for Apache Kafka® | Google Cloud Next ’19
Confluent Cloud for Apache Kafka® | Google Cloud Next ’19Confluent Cloud for Apache Kafka® | Google Cloud Next ’19
Confluent Cloud for Apache Kafka® | Google Cloud Next ’19
 
Why Cloud-Native Kafka Matters: 4 Reasons to Stop Managing it Yourself
Why Cloud-Native Kafka Matters: 4 Reasons to Stop Managing it YourselfWhy Cloud-Native Kafka Matters: 4 Reasons to Stop Managing it Yourself
Why Cloud-Native Kafka Matters: 4 Reasons to Stop Managing it Yourself
 
Kafka summit apac session
Kafka summit apac sessionKafka summit apac session
Kafka summit apac session
 
Building a Secure, Tamper-Proof & Scalable Blockchain on Top of Apache Kafka ...
Building a Secure, Tamper-Proof & Scalable Blockchain on Top of Apache Kafka ...Building a Secure, Tamper-Proof & Scalable Blockchain on Top of Apache Kafka ...
Building a Secure, Tamper-Proof & Scalable Blockchain on Top of Apache Kafka ...
 
Solutions for bi-directional integration between Oracle RDBMS & Apache Kafka
Solutions for bi-directional integration between Oracle RDBMS & Apache KafkaSolutions for bi-directional integration between Oracle RDBMS & Apache Kafka
Solutions for bi-directional integration between Oracle RDBMS & Apache Kafka
 
Building a real-time data processing pipeline using Apache Kafka, Kafka Conne...
Building a real-time data processing pipeline using Apache Kafka, Kafka Conne...Building a real-time data processing pipeline using Apache Kafka, Kafka Conne...
Building a real-time data processing pipeline using Apache Kafka, Kafka Conne...
 
Achieve Sub-Second Analytics on Apache Kafka with Confluent and Imply
Achieve Sub-Second Analytics on Apache Kafka with Confluent and ImplyAchieve Sub-Second Analytics on Apache Kafka with Confluent and Imply
Achieve Sub-Second Analytics on Apache Kafka with Confluent and Imply
 
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB) - Friends, Enemies or ...
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB) - Friends, Enemies or ...Apache Kafka vs. Integration Middleware (MQ, ETL, ESB) - Friends, Enemies or ...
Apache Kafka vs. Integration Middleware (MQ, ETL, ESB) - Friends, Enemies or ...
 
Ten reasons to choose Apache Pulsar over Apache Kafka for Event Sourcing_Robe...
Ten reasons to choose Apache Pulsar over Apache Kafka for Event Sourcing_Robe...Ten reasons to choose Apache Pulsar over Apache Kafka for Event Sourcing_Robe...
Ten reasons to choose Apache Pulsar over Apache Kafka for Event Sourcing_Robe...
 
Bank of China Tech Talk 2: Introduction to Streaming Data and Stream Processi...
Bank of China Tech Talk 2: Introduction to Streaming Data and Stream Processi...Bank of China Tech Talk 2: Introduction to Streaming Data and Stream Processi...
Bank of China Tech Talk 2: Introduction to Streaming Data and Stream Processi...
 
Kafka for Real-Time Replication between Edge and Hybrid Cloud
Kafka for Real-Time Replication between Edge and Hybrid CloudKafka for Real-Time Replication between Edge and Hybrid Cloud
Kafka for Real-Time Replication between Edge and Hybrid Cloud
 
Neha Narkhede | Kafka Summit London 2019 Keynote | Event Streaming: Our Cloud...
Neha Narkhede | Kafka Summit London 2019 Keynote | Event Streaming: Our Cloud...Neha Narkhede | Kafka Summit London 2019 Keynote | Event Streaming: Our Cloud...
Neha Narkhede | Kafka Summit London 2019 Keynote | Event Streaming: Our Cloud...
 
Kafka as your Data Lake - is it Feasible?
Kafka as your Data Lake - is it Feasible?Kafka as your Data Lake - is it Feasible?
Kafka as your Data Lake - is it Feasible?
 
Elastically Scaling Kafka Using Confluent
Elastically Scaling Kafka Using ConfluentElastically Scaling Kafka Using Confluent
Elastically Scaling Kafka Using Confluent
 
Introduction to Stream Processing
Introduction to Stream ProcessingIntroduction to Stream Processing
Introduction to Stream Processing
 
Building event-driven (Micro)Services with Apache Kafka Ecosystem
Building event-driven (Micro)Services with Apache Kafka EcosystemBuilding event-driven (Micro)Services with Apache Kafka Ecosystem
Building event-driven (Micro)Services with Apache Kafka Ecosystem
 
KSQL: Open Source Streaming for Apache Kafka
KSQL: Open Source Streaming for Apache KafkaKSQL: Open Source Streaming for Apache Kafka
KSQL: Open Source Streaming for Apache Kafka
 
Real time data processing and model inferncing platform with Kafka streams (N...
Real time data processing and model inferncing platform with Kafka streams (N...Real time data processing and model inferncing platform with Kafka streams (N...
Real time data processing and model inferncing platform with Kafka streams (N...
 

Similar to A guide through the Azure Messaging services - Update Conference

INTERNET OF THINGS & AZURE
INTERNET OF THINGS & AZUREINTERNET OF THINGS & AZURE
INTERNET OF THINGS & AZUREDotNetCampus
 
Azure Messaging Crossroads
Azure Messaging CrossroadsAzure Messaging Crossroads
Azure Messaging CrossroadsSean Feldman
 
Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...
Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...
Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...confluent
 
Azure Platform
Azure Platform Azure Platform
Azure Platform Wes Yanaga
 
Introduction to Windows Azure Platform
Introduction to Windows Azure PlatformIntroduction to Windows Azure Platform
Introduction to Windows Azure PlatformSergejus Barinovas
 
Windowsazureplatform Overviewlatest
Windowsazureplatform OverviewlatestWindowsazureplatform Overviewlatest
Windowsazureplatform Overviewlatestrajramab
 
AZUG.BE - Azure User Group Belgium - First public meeting
AZUG.BE - Azure User Group Belgium - First public meetingAZUG.BE - Azure User Group Belgium - First public meeting
AZUG.BE - Azure User Group Belgium - First public meetingMaarten Balliauw
 
Azure Overview Csco
Azure Overview CscoAzure Overview Csco
Azure Overview Cscorajramab
 
An Azure of Things, a developer’s perspective
An Azure of Things, a developer’s perspectiveAn Azure of Things, a developer’s perspective
An Azure of Things, a developer’s perspectiveBizTalk360
 
Pieter de Bruin (Microsoft) - Welke technologie gebruiken bij implementatie M...
Pieter de Bruin (Microsoft) - Welke technologie gebruiken bij implementatie M...Pieter de Bruin (Microsoft) - Welke technologie gebruiken bij implementatie M...
Pieter de Bruin (Microsoft) - Welke technologie gebruiken bij implementatie M...AFAS Software
 
Serverless Messaging with Microsoft Azure by Steef-Jan Wiggers
Serverless Messaging with Microsoft Azure by Steef-Jan WiggersServerless Messaging with Microsoft Azure by Steef-Jan Wiggers
Serverless Messaging with Microsoft Azure by Steef-Jan WiggersAdam Walhout
 
Windows Azure - Uma Plataforma para o Desenvolvimento de Aplicações
Windows Azure - Uma Plataforma para o Desenvolvimento de AplicaçõesWindows Azure - Uma Plataforma para o Desenvolvimento de Aplicações
Windows Azure - Uma Plataforma para o Desenvolvimento de AplicaçõesComunidade NetPonto
 
Supercharge Your Product Development with Continuous Delivery & Serverless Co...
Supercharge Your Product Development with Continuous Delivery & Serverless Co...Supercharge Your Product Development with Continuous Delivery & Serverless Co...
Supercharge Your Product Development with Continuous Delivery & Serverless Co...Amazon Web Services
 
In search of the perfect IoT Stack - Scalable IoT Architectures with MQTT
In search of the perfect IoT Stack - Scalable IoT Architectures with MQTTIn search of the perfect IoT Stack - Scalable IoT Architectures with MQTT
In search of the perfect IoT Stack - Scalable IoT Architectures with MQTTDominik Obermaier
 
Azure: Lessons From The Field
Azure: Lessons From The FieldAzure: Lessons From The Field
Azure: Lessons From The FieldRob Gillen
 
Clouds clouds everywhere
Clouds clouds everywhereClouds clouds everywhere
Clouds clouds everywhereMatt Deacon
 
Microsoft Azure Cloud Basics Tutorial
Microsoft Azure Cloud Basics TutorialMicrosoft Azure Cloud Basics Tutorial
Microsoft Azure Cloud Basics TutorialIIMSE Edu
 

Similar to A guide through the Azure Messaging services - Update Conference (20)

India Webinar
India WebinarIndia Webinar
India Webinar
 
INTERNET OF THINGS & AZURE
INTERNET OF THINGS & AZUREINTERNET OF THINGS & AZURE
INTERNET OF THINGS & AZURE
 
Azure Messaging Crossroads
Azure Messaging CrossroadsAzure Messaging Crossroads
Azure Messaging Crossroads
 
Introduction To Cloud Computing
Introduction To Cloud ComputingIntroduction To Cloud Computing
Introduction To Cloud Computing
 
Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...
Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...
Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...
 
Azure Platform
Azure Platform Azure Platform
Azure Platform
 
Introduction to Windows Azure Platform
Introduction to Windows Azure PlatformIntroduction to Windows Azure Platform
Introduction to Windows Azure Platform
 
Windowsazureplatform Overviewlatest
Windowsazureplatform OverviewlatestWindowsazureplatform Overviewlatest
Windowsazureplatform Overviewlatest
 
AZUG.BE - Azure User Group Belgium - First public meeting
AZUG.BE - Azure User Group Belgium - First public meetingAZUG.BE - Azure User Group Belgium - First public meeting
AZUG.BE - Azure User Group Belgium - First public meeting
 
Azure Overview Csco
Azure Overview CscoAzure Overview Csco
Azure Overview Csco
 
An Azure of Things, a developer’s perspective
An Azure of Things, a developer’s perspectiveAn Azure of Things, a developer’s perspective
An Azure of Things, a developer’s perspective
 
Pieter de Bruin (Microsoft) - Welke technologie gebruiken bij implementatie M...
Pieter de Bruin (Microsoft) - Welke technologie gebruiken bij implementatie M...Pieter de Bruin (Microsoft) - Welke technologie gebruiken bij implementatie M...
Pieter de Bruin (Microsoft) - Welke technologie gebruiken bij implementatie M...
 
Serverless Messaging with Microsoft Azure by Steef-Jan Wiggers
Serverless Messaging with Microsoft Azure by Steef-Jan WiggersServerless Messaging with Microsoft Azure by Steef-Jan Wiggers
Serverless Messaging with Microsoft Azure by Steef-Jan Wiggers
 
Migrating Apps To Azure
Migrating Apps To AzureMigrating Apps To Azure
Migrating Apps To Azure
 
Windows Azure - Uma Plataforma para o Desenvolvimento de Aplicações
Windows Azure - Uma Plataforma para o Desenvolvimento de AplicaçõesWindows Azure - Uma Plataforma para o Desenvolvimento de Aplicações
Windows Azure - Uma Plataforma para o Desenvolvimento de Aplicações
 
Supercharge Your Product Development with Continuous Delivery & Serverless Co...
Supercharge Your Product Development with Continuous Delivery & Serverless Co...Supercharge Your Product Development with Continuous Delivery & Serverless Co...
Supercharge Your Product Development with Continuous Delivery & Serverless Co...
 
In search of the perfect IoT Stack - Scalable IoT Architectures with MQTT
In search of the perfect IoT Stack - Scalable IoT Architectures with MQTTIn search of the perfect IoT Stack - Scalable IoT Architectures with MQTT
In search of the perfect IoT Stack - Scalable IoT Architectures with MQTT
 
Azure: Lessons From The Field
Azure: Lessons From The FieldAzure: Lessons From The Field
Azure: Lessons From The Field
 
Clouds clouds everywhere
Clouds clouds everywhereClouds clouds everywhere
Clouds clouds everywhere
 
Microsoft Azure Cloud Basics Tutorial
Microsoft Azure Cloud Basics TutorialMicrosoft Azure Cloud Basics Tutorial
Microsoft Azure Cloud Basics Tutorial
 

More from Eldert Grootenboer

Building Smarter Solutions Using Azure and Cognitive Services - IT Pro Dev Co...
Building Smarter Solutions Using Azure and Cognitive Services - IT Pro Dev Co...Building Smarter Solutions Using Azure and Cognitive Services - IT Pro Dev Co...
Building Smarter Solutions Using Azure and Cognitive Services - IT Pro Dev Co...Eldert Grootenboer
 
Building better security for your API platform using Azure API Management
Building better security for your API platform using Azure API ManagementBuilding better security for your API platform using Azure API Management
Building better security for your API platform using Azure API ManagementEldert Grootenboer
 
Take back your time; Let AI do the work for you! - M365 Bangalore
Take back your time; Let AI do the work for you! - M365 BangaloreTake back your time; Let AI do the work for you! - M365 Bangalore
Take back your time; Let AI do the work for you! - M365 BangaloreEldert Grootenboer
 
Implementing ChatOps using Microsoft Power Platform - M365 Saturday Ahmedabad...
Implementing ChatOps using Microsoft Power Platform - M365 Saturday Ahmedabad...Implementing ChatOps using Microsoft Power Platform - M365 Saturday Ahmedabad...
Implementing ChatOps using Microsoft Power Platform - M365 Saturday Ahmedabad...Eldert Grootenboer
 
Building better security for your API platform using Azure API Management
Building better security for your API platform using Azure API ManagementBuilding better security for your API platform using Azure API Management
Building better security for your API platform using Azure API ManagementEldert Grootenboer
 
Implementing chat ops using Microsoft Power Platform
Implementing chat ops using Microsoft Power PlatformImplementing chat ops using Microsoft Power Platform
Implementing chat ops using Microsoft Power PlatformEldert Grootenboer
 
Building better security for your API platform using Azure API Management
Building better security for your API platform using Azure API ManagementBuilding better security for your API platform using Azure API Management
Building better security for your API platform using Azure API ManagementEldert Grootenboer
 
Implementing ChatOps using Microsoft Power Platform
Implementing ChatOps using Microsoft Power PlatformImplementing ChatOps using Microsoft Power Platform
Implementing ChatOps using Microsoft Power PlatformEldert Grootenboer
 
Take back your time; let ai do the work for you!
Take back your time; let ai do the work for you!Take back your time; let ai do the work for you!
Take back your time; let ai do the work for you!Eldert Grootenboer
 
Lessons learned from implementing api management in the real world
Lessons learned from implementing api management in the real worldLessons learned from implementing api management in the real world
Lessons learned from implementing api management in the real worldEldert Grootenboer
 
Api Management Lessons From The Trenches - Update Conference
Api Management Lessons From The Trenches - Update ConferenceApi Management Lessons From The Trenches - Update Conference
Api Management Lessons From The Trenches - Update ConferenceEldert Grootenboer
 
Lessons Learned From Implementing API Management In The Real World
Lessons Learned From Implementing API Management In The Real WorldLessons Learned From Implementing API Management In The Real World
Lessons Learned From Implementing API Management In The Real WorldEldert Grootenboer
 

More from Eldert Grootenboer (13)

Building Smarter Solutions Using Azure and Cognitive Services - IT Pro Dev Co...
Building Smarter Solutions Using Azure and Cognitive Services - IT Pro Dev Co...Building Smarter Solutions Using Azure and Cognitive Services - IT Pro Dev Co...
Building Smarter Solutions Using Azure and Cognitive Services - IT Pro Dev Co...
 
Building better security for your API platform using Azure API Management
Building better security for your API platform using Azure API ManagementBuilding better security for your API platform using Azure API Management
Building better security for your API platform using Azure API Management
 
Take back your time; Let AI do the work for you! - M365 Bangalore
Take back your time; Let AI do the work for you! - M365 BangaloreTake back your time; Let AI do the work for you! - M365 Bangalore
Take back your time; Let AI do the work for you! - M365 Bangalore
 
Implementing ChatOps using Microsoft Power Platform - M365 Saturday Ahmedabad...
Implementing ChatOps using Microsoft Power Platform - M365 Saturday Ahmedabad...Implementing ChatOps using Microsoft Power Platform - M365 Saturday Ahmedabad...
Implementing ChatOps using Microsoft Power Platform - M365 Saturday Ahmedabad...
 
Building better security for your API platform using Azure API Management
Building better security for your API platform using Azure API ManagementBuilding better security for your API platform using Azure API Management
Building better security for your API platform using Azure API Management
 
Implementing chat ops using Microsoft Power Platform
Implementing chat ops using Microsoft Power PlatformImplementing chat ops using Microsoft Power Platform
Implementing chat ops using Microsoft Power Platform
 
Building better security for your API platform using Azure API Management
Building better security for your API platform using Azure API ManagementBuilding better security for your API platform using Azure API Management
Building better security for your API platform using Azure API Management
 
Implementing ChatOps using Microsoft Power Platform
Implementing ChatOps using Microsoft Power PlatformImplementing ChatOps using Microsoft Power Platform
Implementing ChatOps using Microsoft Power Platform
 
Take back your time; let ai do the work for you!
Take back your time; let ai do the work for you!Take back your time; let ai do the work for you!
Take back your time; let ai do the work for you!
 
Lessons learned from implementing api management in the real world
Lessons learned from implementing api management in the real worldLessons learned from implementing api management in the real world
Lessons learned from implementing api management in the real world
 
Api Management Lessons From The Trenches - Update Conference
Api Management Lessons From The Trenches - Update ConferenceApi Management Lessons From The Trenches - Update Conference
Api Management Lessons From The Trenches - Update Conference
 
Lessons Learned From Implementing API Management In The Real World
Lessons Learned From Implementing API Management In The Real WorldLessons Learned From Implementing API Management In The Real World
Lessons Learned From Implementing API Management In The Real World
 
IoT on the Edge
IoT on the EdgeIoT on the Edge
IoT on the Edge
 

Recently uploaded

Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 

Recently uploaded (20)

Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 

A guide through the Azure Messaging services - Update Conference

  • 1. A guide through the Azure Messaging services Eldert Grootenboer
  • 4. Messaging in Azure Event Hubs Streaming data Service Bus Enterprise messaging Event Grid Cross cloud reactive eventing Storage Queues Simple task queues Relay Secure sockets without changes to your network
  • 5. Why so many choices?
  • 8. Events Independent Report State Change Actionable Time Ordered Context Partitioned Report Condition Analyzable Discrete Series
  • 10. Let’s have a look at the services
  • 12. Storage queues are task queues Coordinate work across compute (VMs, Functions, etc.) Low cost Pay as you go Easy to use Messages are generally homogeneous Unlimited number of queues Unlimited number of concurrent connections Maximum queue size 500TB Maximum message size 64KB Few features
  • 13. Few features No headers/metadata No pub/sub No Тime To Live No scheduling No dead-letter queue Peeking no more than 32 messages only No de-duplication 7 days retention period No transactional guarantees
  • 14. A simple queue Sender sends message to queue Queue ACKs receipt Receiver connects to queue & retrieves message Receiver ACKs complete (or other action)
  • 16. Enterprise Messaging as a Service Queues & Topics Reliable asynchronous communication Rich features for temporal control Message headers Routing and filtering Convoys & Sessions (related messages with state)
  • 17. Features of Service Bus Scheduled delivery Time To Live ForwardTo Defer Sessions Batching Ordering Auto-delete on idle OnMessage Duplicate detection Actions Transactions Poison message handling
  • 18. Features of Service Bus Premium Dedicated resources Geo-DR Availability Zones Virtual Network Service Endpoints
  • 19. Topics & Subscriptions Sender only knows about Topic Receivers only know about Subscriptions Filters and Actions exist on Subscriptions Topic Subscription 1 Subscription 2 type=order type=quote Filter Filter “type” = “order” “type” = “quote”
  • 20. Where does Service Bus fit in? Decoupling and providing durability with transactional consistency Queue
  • 22. What is an event? Something happened Notification Triggers a reaction Based on facts Can be series based or discrete
  • 24. Concepts Events: what happened Event Publishers: where it took place Topics: where publishers send events Event Subscriptions: how you receive events Event Handlers: the app or service reacting to the event Events
  • 25. Trigger a functionto run CognitiveAPI when a file is added to storage Use a function to run a compliance checkon each newly created SQL database Tag newly provisioned VMs with AzureAutomation and add to metadata store Use custom“drive start” and “driveend” events to log vehicle performancemetrics What is Event Grid For?
  • 26. "topic": "/subscriptions/{id}/resourceGroups/{rg}/providers/Microsoft.Storage/storageAccounts/{storageacc}", "subject": "/blobServices/default/containers/monitored/blobs/blob.json", "eventType": "Microsoft.Storage.BlobCreated", "eventTime": "2017-09-20T01:12:35.8066557Z", "id":"9ac0de1a-001e-00da-23ad-311d4a06bb2f", "data":{ "api":"PutBlob", "clientRequestId": "9ac0de1a-9da0-11e7-9a3b-51cc40a2ca27", "requestId": "9ac0de1a-001e-00da-23ad-311d4a000000", "eTag":"0x9AC0FC4ADA5997D", "contentType": "application/json", "contentLength": 268, "blobType": "BlockBlob", "url":"https://{storageacc}.blob.core.windows.net/monitored/blob.json", "sequencer": "00000000000019200000000000F12B37", "storageDiagnostics": { "batchId": "9ac0de1a-e1a1-44c5-a0a1-a66b2a191fc4“ } What does an Event look like?
  • 27. Publishing custom events Custom Topics Topic: <Name of Topic> Subject: <whatever you choose> EventType: <whatever you choose> mytopic.westus2-1.eventgrid.azure.net sub1 sub2 mytopic Topic:mytopic.westus2-1.eventgrid.azure.net Subject: /products/beverages EventType: skuCreated Topic:mytopic.westus2-1.eventgrid.azure.net Subject: /products/snacks EventType: skuUpdated Publisher
  • 28. The challenge with Custom Topics Having many topics forces you to do routing This is what Grid was made for There is a better way! sub1 sub2 mytopic2 sub1 sub2 mytopic3 sub1 sub2 mytopic4 sub1 sub2 mytopic1 Publisher
  • 29. Event Domains All events to single endpoint Sender sets topic Subscribers are authenticated via AAD (cross org support) Subscribers identity not required to be Azure Entire service can be white labeled
  • 30. Advanced Filters Works on the data portion of the event Supports ten levels of nesting Supports one or more values Up to 10 advanced filters can be combined in OR Numbers NumberLessThan NumberLessThanOrEquals NumberGreaterThan NumberGreaterThanOrEquals NumberIn–thevaluefordata.keyequalsavalueintheset[0,2.08,3.14] NumberNotIn–thevaluefordata.keyisnotintheset[1,11,112,1124] Strings StringContains–thevaluefordata.keycontains“the” StringIn–thevaluefordata.keyequalsavalueintheset[“small”,“brown”,“fox”] StringNotIn–thevaluefordata.keyequalsavalueintheset[“jumped”,“over”,“the”] StringBeginsWith–thevaluefordata.keybeginswith“lazy” StringEndsWith–thevaluefordata.keyendswith“dog” Boolean BoolEquals
  • 31. Engineered for scale and reliability Retry intervals 10 seconds 30 seconds 1 minute 5 minutes 10 minutes 30 minutes 1 hour Once an hour up to 24 hours Defaults: 30 delivery attempts / 24 hours Dead-lettering Requires Storage account + container Dead-lettered events stored as blobs
  • 32. Storage Queues Flexible Interoperability Multi-Cloud Solutions IoT Hub Blob Storage Resource Groups Azure Subscriptions Event Hubs Custom Topics Storage (GPv2) Container Registry Service Bus Azure Event Grid + CNCF CloudEvents Azure Functions Logic Apps Azure Automation WebHooks Event Hubs
  • 34. Records a stream Recording moves forward only You can play the tape over and over again Can play from anywhere on the tape FastFwd or Rewind then Play Multiple channels with different data Event streaming
  • 35. Event Hubs conceptual architecture Kafka HTTP AMQP
  • 36. Where does data streaming fit in? Cloud gateways (web APIs) Field gateways Applications LegacyIOT (customprotocols) Devices IP-capabledevices (Windows/Linux) Low-powerdevices (RTOS) Search and query Cortana Analytics PowerBI Dashboards Devices to take action
  • 37. Event Hubs Capture: slow data stream Policy based push to own storage Avro format Does not impact throughput Better batching and archival scenarios Offloads batch processing from your real-time stream (no pressure drop)
  • 39. How are Event Hubs and Kafka similar? Both use partitioned consumer Partitions are independent Both use a client side cursor concept Both can scale to very high workloads Conceptually they are nearly the same
  • 40. Azure Event Hubs for Apache Kafka™ Kafka 1.0 compatible endpoint backed by Event Hubs Use your existing Kafka application & tools with Event Hubs Only need to change your connection string All defaults supported
  • 42. 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
  • 43. Where does Relay fit in? When you have scenarios that are too complex or costly for VPN When VNET integration is not possible When you have to keep your data where it is
  • 44. How does it work? Service registers cloud endpoint Client connects to cloud endpoint Network magic happens
  • 45. Relay as a gateway Can front multiple service instances Round robin controlled in Relay service Sticky sessions ServiceInstances
  • 47. Serverless Streaming Data Enterprise Key Takeaways Segment Simple Queuing Eventing PubSub Streaming Enterprise Messaging Cloud Socket Product Storage Queues Event Grid Event Hubs Service Bus Relay & HC What do you care about • Communication within an app • Individual message • Queue (polling) semantics • Easy to use • Pay as you go • Communication between apps / orgs • Individual message • Push semantics • Filtering and routing • Pay as you go • Fan out • Many messages in a Stream (think in MBs) • Ease of use and operation • Low cost • Fan in • Strict ordering • Works with other tools • Instantaneous consistency • Strict ordering • JMS • Non-repudiation & Security • Geo-Replication & Availability • Rich features (de-dupe, scheduling, etc.) • Raw TCP socket that can traverse firewalls • Load balanced live traffic What you care less about • Ordering of messaging • Instantaneous consistency • Ordering of messaging • Instantaneous consistency • Individual message semantics • Server-side cursor • Only Once • Cost • Simplicity • Buffered messaging • Queue semantics Focus point • Single partition lightweight queue • Reliable fan out push at massive scale • High scale distributed log • Highly indexed full featured message broker • High density TCP tunneling Hybrid

Editor's Notes

  1. Exchange of messages between systems NOT SMS, WhatsApp etc.
  2. Commands are an instruction, telling a system to "do something". Approve the invoice. Reject the policy. Turn the light off. Hop on one foot. Commands can be validated, approved/rejected, processed, replied. Events on the other hand reflect an immutable fact. Invoice approved. Policy rejected. Light turned off. Ankle broken. We can't approve/reject events in the past, even if we would love to turn back the clock on certain recent elections. https://jimmybogard.com/message-naming-conventions/
  3. What the service is What is the key scenario How we address that challenge
  4. Rename from Azure Storage Queue to Azure Simple Queue or Elastic Queue
  5. - A reference to MSMQ (when on-premises solutions roamed the world) - Mention it's HTTP-based implementation - Tasks queues coordinate work across compute (VMs, Functions, etc.) - The messages in a queue are generally homogeneous - Low cost - Pay as you Go billing model - Easy to use - Have as many queues as you like (or connections) - Maximum queue size is insane while message size is small - mention claim check that's required to be implemented - Very few features – next slide
  6. Event Grid adds a small randomization to all retry intervals. After one hour, event delivery is retried once an hour. By default, Event Grid expires all events that aren't delivered within 24 hours. You can customize the retry policy when creating an event subscription. You provide the maximum number of delivery attempts (default is 30) and the event time-to-live (default is 1440 minutes). [30=7 in the first hour + 23 with one-per-hour]
  7. CloudEvents simplifies interoperability by providing a common event schema for publishing, and consuming cloud based events. This schema allows for uniform tooling, standard ways of routing & handling events, and universal ways of deserializing the outer event schema. With a common schema, you can more easily integrate work across platforms.
  8. Kill heart. Data sovereignty and accessing on-prem data securely from remote locations. Law firms with client and case notes in their office that needs to be accessed by attorneys remotely. Same with medical data by doctors and nurses. Mom and pop shop could use this as a cheaper alternative to azure vpn.