SlideShare a Scribd company logo
An overview of message
brokers
Agenda
• Definitions

• Messaging Systems : purpose & features
• Frameworks
• Use Cases, Demo
• Conclusion
LEARN THE DIFFERENCE

IT COULD SAVE YOUR LIFE
Message Broker
• Component of « MOM », Message Oriented Middleware
• An architectural pattern for message validation,
transformation and routing.

• Mediate communication amongst applications,
minimizing the mutual awareness that application should
have of each other, effectively implementing decoupling
 Integrate applications without enforcing a common
interface
Purpose

• Route messages to one or more of many destinations (unicast / multicast)

• Transform messages to an alternative representation (mapping)
• Perform message aggregation, decomposition/recomposition of messages
• Respond to events or errors (“triggering”)

• Provide content and topic-based message routing using the publish–
subscribe pattern.
5
Characteristics & Features
Producer
(multiple or not)

•
•
•
•
•
•
•

push

Broker

pull

Consumer
(multiple or not)

Topology (1-1, 1-N, N-N)
Compression
Timed or permanent persistence
Disconnect detection, error recovery
Acknowleding, ordering, retries
Guaranteed delivery
Combination of features : delivery + ordering : “EOID” exactly once in order

6
Common Apps
JMS Implementations

Active MQ, Jboss Messaging, Glassfish

AMQP Implementations

Rabbit MQ

Lightweight / non-standardized

ZeroMQ, Finagle, Kafka, Beanstalkd

Commercial MOMs

IBM Websphere MQ, MSMQ (Microsoft)
BEA Weblogic, SAP Netweaver

Enterprise Service Buses

Biztalk, Websphere, Oracle Service Bus

7
AMQP
•

Some key AMQP messaging protocol requirements
– Internet protocol - like HTTP, TCP –
but ASYNCHRONOUS
– Where to send messages (Routing)
– How to get there (Delivery)
– What goes in must come out (Fidelity)

- Each message is stateless
- Consumers create queues; these
buffer messages for push to consumers
- Queues are stateful, ordered, and can
be persistent, transient, private, shared.
- Exchanges are stateless routing
tables.
8
RabbitMQ
•

Implements AMQP

•

Written in Erlang, a functional language known for its ability for concurrent
processing, and backed by Mnesia, Erlang’s powerful persistence database.

•

Used by NASA’s Nebula Cloud Computing Platform, VMWare, AT&T
Interactive, Digg, BBC, Nokia and ….

9
Unibet use of Rabbit MQ

10
Unibet and RabbitMQ

11
What about SQL Server Service Broker?
SQL Server Service Broker :
- native support for messaging and queuing applications
- use the Sql Server Database Engine components to communicate between
disparate databases.
- handles the communication paths in the context of transactioned conversation.

12
Demo

13
Links
•
•
•

http://fr.slideshare.net/MaxAlexejev/modern-distributed-messaging-and-rpc
http://msdn.microsoft.com/en-us/library/ms978706.aspx : « broker » pattern
http://blog.pasker.net/2008/06/16/you-might-need-messaging-if/ : why you
might need messaging 

•

http://fr.slideshare.net/somic/introduction-to-amqp-messaging-with-rabbitmq/ :
AMQP functionnalities in detail
http://libfugu.so/blog/2013/09/24/rabbitmq-a-quick-and-dirty-introduction
http://www.rabbitmq.com/resources/RabbitMQ_usecase_StefanNorberg_Unibet
_10xScalabilityAtHalfTheCost.pdf : Rabbit MQ at Unibet, the story of Kevin and his
candy bag

•
•

•

http://www.codeproject.com/Articles/11795/Introducing-Distributed-Messagingusing-Service-Br : good description of Sql Server Service Broker

14
15
Find out more
•

On https://techblog.betclicgroup.com/
About Betclic
•
•

•

Betclic Everest Group, one of the world leaders in online gaming, has a unique
portfolio comprising various complementary international brands: Betclic, Everest
Gaming, bet-at-home.com, Expekt…
Active in 100 countries with more than 12 million customers worldwide, the Group is
committed to promoting secure and responsible gaming and is a member of several
international professional associations including the EGBA (European Gaming and
Betting Association) and the ESSA (European Sports Security Association).
Through our brands, Betclic Everest Group places expertise, technological know-how
and security at the heart of our strategy to deliver an on-line gaming offer attuned to
the passion of our players.

More Related Content

What's hot

Wso2 esb 5.0.0 product release webinar
Wso2 esb 5.0.0   product release webinarWso2 esb 5.0.0   product release webinar
Wso2 esb 5.0.0 product release webinar
Chanaka Fernando
 
Introduction to Apache ActiveMQ Artemis
Introduction to Apache ActiveMQ ArtemisIntroduction to Apache ActiveMQ Artemis
Introduction to Apache ActiveMQ Artemis
Yoshimasa Tanabe
 
AMQP
AMQPAMQP
Pulsar - flexible pub-sub for internet scale
Pulsar - flexible pub-sub for internet scalePulsar - flexible pub-sub for internet scale
Pulsar - flexible pub-sub for internet scale
Matteo Merli
 
Apache ActiveMQ - Enterprise messaging in action
Apache ActiveMQ - Enterprise messaging in actionApache ActiveMQ - Enterprise messaging in action
Apache ActiveMQ - Enterprise messaging in action
dejanb
 
Introduction to Apache Kafka
Introduction to Apache KafkaIntroduction to Apache Kafka
Introduction to Apache Kafka
AIMDek Technologies
 
Enterprise Messaging With ActiveMQ and Spring JMS
Enterprise Messaging With ActiveMQ and Spring JMSEnterprise Messaging With ActiveMQ and Spring JMS
Enterprise Messaging With ActiveMQ and Spring JMS
Bruce Snyder
 
Apache Kafka - Messaging System Overview
Apache Kafka - Messaging System OverviewApache Kafka - Messaging System Overview
Apache Kafka - Messaging System Overview
Dmitry Tolpeko
 
Apache ActiveMQ and Apache ServiceMix
Apache ActiveMQ and Apache ServiceMixApache ActiveMQ and Apache ServiceMix
Apache ActiveMQ and Apache ServiceMix
Bruce Snyder
 
Apache Kafka - Free Friday
Apache Kafka - Free FridayApache Kafka - Free Friday
Apache Kafka - Free Friday
Otávio Carvalho
 
ActiveMQ In Action
ActiveMQ In ActionActiveMQ In Action
ActiveMQ In Action
Bruce Snyder
 
AMQP 1.0 introduction
AMQP 1.0 introductionAMQP 1.0 introduction
AMQP 1.0 introduction
Clemens Vasters
 
Apache Kafka Architecture & Fundamentals Explained
Apache Kafka Architecture & Fundamentals ExplainedApache Kafka Architecture & Fundamentals Explained
Apache Kafka Architecture & Fundamentals Explained
confluent
 
ActiveMQ In Action - ApacheCon 2011
ActiveMQ In Action - ApacheCon 2011ActiveMQ In Action - ApacheCon 2011
ActiveMQ In Action - ApacheCon 2011
Bruce Snyder
 
Kafka as Message Broker
Kafka as Message BrokerKafka as Message Broker
Kafka as Message Broker
Haluan Irsad
 
Mule rabbitmq
Mule rabbitmqMule rabbitmq
Mule rabbitmq
Praneethchampion
 
Enterprise Messaging with Apache ActiveMQ
Enterprise Messaging with Apache ActiveMQEnterprise Messaging with Apache ActiveMQ
Enterprise Messaging with Apache ActiveMQ
elliando dias
 
Kafka basics
Kafka basicsKafka basics
IoT Studio #1: Protocols introduction and connected jukebox
IoT Studio #1: Protocols introduction and connected jukeboxIoT Studio #1: Protocols introduction and connected jukebox
IoT Studio #1: Protocols introduction and connected jukebox
Mickaël Rémond
 
NServiceBus - introduction to a message based distributed architecture
NServiceBus - introduction to a message based distributed architectureNServiceBus - introduction to a message based distributed architecture
NServiceBus - introduction to a message based distributed architecture
Mauro Servienti
 

What's hot (20)

Wso2 esb 5.0.0 product release webinar
Wso2 esb 5.0.0   product release webinarWso2 esb 5.0.0   product release webinar
Wso2 esb 5.0.0 product release webinar
 
Introduction to Apache ActiveMQ Artemis
Introduction to Apache ActiveMQ ArtemisIntroduction to Apache ActiveMQ Artemis
Introduction to Apache ActiveMQ Artemis
 
AMQP
AMQPAMQP
AMQP
 
Pulsar - flexible pub-sub for internet scale
Pulsar - flexible pub-sub for internet scalePulsar - flexible pub-sub for internet scale
Pulsar - flexible pub-sub for internet scale
 
Apache ActiveMQ - Enterprise messaging in action
Apache ActiveMQ - Enterprise messaging in actionApache ActiveMQ - Enterprise messaging in action
Apache ActiveMQ - Enterprise messaging in action
 
Introduction to Apache Kafka
Introduction to Apache KafkaIntroduction to Apache Kafka
Introduction to Apache Kafka
 
Enterprise Messaging With ActiveMQ and Spring JMS
Enterprise Messaging With ActiveMQ and Spring JMSEnterprise Messaging With ActiveMQ and Spring JMS
Enterprise Messaging With ActiveMQ and Spring JMS
 
Apache Kafka - Messaging System Overview
Apache Kafka - Messaging System OverviewApache Kafka - Messaging System Overview
Apache Kafka - Messaging System Overview
 
Apache ActiveMQ and Apache ServiceMix
Apache ActiveMQ and Apache ServiceMixApache ActiveMQ and Apache ServiceMix
Apache ActiveMQ and Apache ServiceMix
 
Apache Kafka - Free Friday
Apache Kafka - Free FridayApache Kafka - Free Friday
Apache Kafka - Free Friday
 
ActiveMQ In Action
ActiveMQ In ActionActiveMQ In Action
ActiveMQ In Action
 
AMQP 1.0 introduction
AMQP 1.0 introductionAMQP 1.0 introduction
AMQP 1.0 introduction
 
Apache Kafka Architecture & Fundamentals Explained
Apache Kafka Architecture & Fundamentals ExplainedApache Kafka Architecture & Fundamentals Explained
Apache Kafka Architecture & Fundamentals Explained
 
ActiveMQ In Action - ApacheCon 2011
ActiveMQ In Action - ApacheCon 2011ActiveMQ In Action - ApacheCon 2011
ActiveMQ In Action - ApacheCon 2011
 
Kafka as Message Broker
Kafka as Message BrokerKafka as Message Broker
Kafka as Message Broker
 
Mule rabbitmq
Mule rabbitmqMule rabbitmq
Mule rabbitmq
 
Enterprise Messaging with Apache ActiveMQ
Enterprise Messaging with Apache ActiveMQEnterprise Messaging with Apache ActiveMQ
Enterprise Messaging with Apache ActiveMQ
 
Kafka basics
Kafka basicsKafka basics
Kafka basics
 
IoT Studio #1: Protocols introduction and connected jukebox
IoT Studio #1: Protocols introduction and connected jukeboxIoT Studio #1: Protocols introduction and connected jukebox
IoT Studio #1: Protocols introduction and connected jukebox
 
NServiceBus - introduction to a message based distributed architecture
NServiceBus - introduction to a message based distributed architectureNServiceBus - introduction to a message based distributed architecture
NServiceBus - introduction to a message based distributed architecture
 

Viewers also liked

Messaging
Messaging Messaging
Messaging
rbpasker
 
Game Power 7 Company Profile and Arab Region Game Data
Game Power 7 Company Profile and Arab Region Game DataGame Power 7 Company Profile and Arab Region Game Data
Game Power 7 Company Profile and Arab Region Game Data
Fadi Mujahid
 
COMPANY PROFILE
COMPANY PROFILECOMPANY PROFILE
COMPANY PROFILE
mmolteni
 
Eco Power (Company Profile)
Eco Power (Company Profile)Eco Power (Company Profile)
Eco Power (Company Profile)
reybiz
 
company overview
company overviewcompany overview
company overview
ntapos
 
SANLEC
SANLECSANLEC
SANLEC
Manal Assaad
 
Kings Profile Power Point Final
Kings Profile Power Point FinalKings Profile Power Point Final
Kings Profile Power Point Final
sherwin_14
 
Moving Online - MIPA Preso
Moving Online - MIPA PresoMoving Online - MIPA Preso
Moving Online - MIPA Preso
Media Now STL
 
PHOTONICS POWER Company Profile
PHOTONICS POWER Company ProfilePHOTONICS POWER Company Profile
PHOTONICS POWER Company Profile
GAiazzi
 
Company profile
Company profileCompany profile
Company profile
Maxim Shvidkiy
 
WSI Net Power Company Profile
WSI Net Power Company ProfileWSI Net Power Company Profile
WSI Net Power Company Profile
WSI Net Power
 
Reverside Company Overview
Reverside Company OverviewReverside Company Overview
Reverside Company Overview
Rajib Gupta
 
The Octamec Group Company Profile
The Octamec Group Company ProfileThe Octamec Group Company Profile
The Octamec Group Company Profile
srinivaskoctamec
 
How to make a company profile
How to make a company profileHow to make a company profile
How to make a company profile
bugswhiz
 
IT Service Point Company Profile
IT Service Point Company ProfileIT Service Point Company Profile
IT Service Point Company Profile
gopi nath
 
Message Queues a basic overview
Message Queues a basic overviewMessage Queues a basic overview
Message Queues a basic overview
Geshan Manandhar
 
General Profile Of The Firm
General Profile Of The FirmGeneral Profile Of The Firm
General Profile Of The Firm
psshahca
 
AD 70 - Investigating the End Times with Faith not Fear Part 8
AD 70 - Investigating the End Times with Faith not Fear Part 8AD 70 - Investigating the End Times with Faith not Fear Part 8
AD 70 - Investigating the End Times with Faith not Fear Part 8
James Kiger
 
Company profile new
Company profile newCompany profile new
Company profile new
Esimple srl
 
Power point my profile
Power point my profilePower point my profile
Power point my profile
sneider_garay
 

Viewers also liked (20)

Messaging
Messaging Messaging
Messaging
 
Game Power 7 Company Profile and Arab Region Game Data
Game Power 7 Company Profile and Arab Region Game DataGame Power 7 Company Profile and Arab Region Game Data
Game Power 7 Company Profile and Arab Region Game Data
 
COMPANY PROFILE
COMPANY PROFILECOMPANY PROFILE
COMPANY PROFILE
 
Eco Power (Company Profile)
Eco Power (Company Profile)Eco Power (Company Profile)
Eco Power (Company Profile)
 
company overview
company overviewcompany overview
company overview
 
SANLEC
SANLECSANLEC
SANLEC
 
Kings Profile Power Point Final
Kings Profile Power Point FinalKings Profile Power Point Final
Kings Profile Power Point Final
 
Moving Online - MIPA Preso
Moving Online - MIPA PresoMoving Online - MIPA Preso
Moving Online - MIPA Preso
 
PHOTONICS POWER Company Profile
PHOTONICS POWER Company ProfilePHOTONICS POWER Company Profile
PHOTONICS POWER Company Profile
 
Company profile
Company profileCompany profile
Company profile
 
WSI Net Power Company Profile
WSI Net Power Company ProfileWSI Net Power Company Profile
WSI Net Power Company Profile
 
Reverside Company Overview
Reverside Company OverviewReverside Company Overview
Reverside Company Overview
 
The Octamec Group Company Profile
The Octamec Group Company ProfileThe Octamec Group Company Profile
The Octamec Group Company Profile
 
How to make a company profile
How to make a company profileHow to make a company profile
How to make a company profile
 
IT Service Point Company Profile
IT Service Point Company ProfileIT Service Point Company Profile
IT Service Point Company Profile
 
Message Queues a basic overview
Message Queues a basic overviewMessage Queues a basic overview
Message Queues a basic overview
 
General Profile Of The Firm
General Profile Of The FirmGeneral Profile Of The Firm
General Profile Of The Firm
 
AD 70 - Investigating the End Times with Faith not Fear Part 8
AD 70 - Investigating the End Times with Faith not Fear Part 8AD 70 - Investigating the End Times with Faith not Fear Part 8
AD 70 - Investigating the End Times with Faith not Fear Part 8
 
Company profile new
Company profile newCompany profile new
Company profile new
 
Power point my profile
Power point my profilePower point my profile
Power point my profile
 

Similar to Mini-Training: Message Brokers

The Overview of Microservices Architecture
The Overview of Microservices ArchitectureThe Overview of Microservices Architecture
The Overview of Microservices Architecture
Paria Heidari
 
Mule
MuleMule
Sai mule esb batch
Sai mule esb batchSai mule esb batch
Sai mule esb batch
saikiran6423
 
Esb process
Esb processEsb process
Esb process
saikiran6423
 
Ashok mule esb
Ashok mule esbAshok mule esb
Ashok mule esb
askumar037
 
Mule esb
Mule esb Mule esb
Mule esb
saikiran6423
 
Mule
MuleMule
Mule slides
Mule slides Mule slides
Mule slides
naveenkodumuri12
 
Mule esb kranthi
Mule esb kranthiMule esb kranthi
Mule esb kranthi
Earnest Stephen
 
Mule esb kranthi
Mule esb kranthiMule esb kranthi
Mule esb kranthi
kranthikumar1210
 
Mule esb naveen
Mule esb naveenMule esb naveen
Mule esb naveen
naveenkodumuri12
 
Niranjan mule esb
Niranjan mule esbNiranjan mule esb
Niranjan mule esb
niranjan1234567
 
Srilekha mule esb
Srilekha mule esbSrilekha mule esb
Srilekha mule esb
srilekha2820
 
Mq Lecture
Mq LectureMq Lecture
Mq Lecture
barnettj10974
 
IBM InterConnect 2015 - IIB Effective Application Development
IBM InterConnect 2015 - IIB Effective Application DevelopmentIBM InterConnect 2015 - IIB Effective Application Development
IBM InterConnect 2015 - IIB Effective Application Development
Andrew Coleman
 
JMS Providers Overview
JMS Providers OverviewJMS Providers Overview
JMS Providers Overview
Vadym Lotar
 
Fan-out, fan-in & the multiplexer: Replication recipes for global platform di...
Fan-out, fan-in & the multiplexer: Replication recipes for global platform di...Fan-out, fan-in & the multiplexer: Replication recipes for global platform di...
Fan-out, fan-in & the multiplexer: Replication recipes for global platform di...
HostedbyConfluent
 
An introduction to Apache Camel
An introduction to Apache CamelAn introduction to Apache Camel
An introduction to Apache Camel
Kapil Kumar
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
MahmoudZidan41
 
JavaOne: Efficiently building and deploying microservices
JavaOne: Efficiently building and deploying microservicesJavaOne: Efficiently building and deploying microservices
JavaOne: Efficiently building and deploying microservices
Bart Blommaerts
 

Similar to Mini-Training: Message Brokers (20)

The Overview of Microservices Architecture
The Overview of Microservices ArchitectureThe Overview of Microservices Architecture
The Overview of Microservices Architecture
 
Mule
MuleMule
Mule
 
Sai mule esb batch
Sai mule esb batchSai mule esb batch
Sai mule esb batch
 
Esb process
Esb processEsb process
Esb process
 
Ashok mule esb
Ashok mule esbAshok mule esb
Ashok mule esb
 
Mule esb
Mule esb Mule esb
Mule esb
 
Mule
MuleMule
Mule
 
Mule slides
Mule slides Mule slides
Mule slides
 
Mule esb kranthi
Mule esb kranthiMule esb kranthi
Mule esb kranthi
 
Mule esb kranthi
Mule esb kranthiMule esb kranthi
Mule esb kranthi
 
Mule esb naveen
Mule esb naveenMule esb naveen
Mule esb naveen
 
Niranjan mule esb
Niranjan mule esbNiranjan mule esb
Niranjan mule esb
 
Srilekha mule esb
Srilekha mule esbSrilekha mule esb
Srilekha mule esb
 
Mq Lecture
Mq LectureMq Lecture
Mq Lecture
 
IBM InterConnect 2015 - IIB Effective Application Development
IBM InterConnect 2015 - IIB Effective Application DevelopmentIBM InterConnect 2015 - IIB Effective Application Development
IBM InterConnect 2015 - IIB Effective Application Development
 
JMS Providers Overview
JMS Providers OverviewJMS Providers Overview
JMS Providers Overview
 
Fan-out, fan-in & the multiplexer: Replication recipes for global platform di...
Fan-out, fan-in & the multiplexer: Replication recipes for global platform di...Fan-out, fan-in & the multiplexer: Replication recipes for global platform di...
Fan-out, fan-in & the multiplexer: Replication recipes for global platform di...
 
An introduction to Apache Camel
An introduction to Apache CamelAn introduction to Apache Camel
An introduction to Apache Camel
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
JavaOne: Efficiently building and deploying microservices
JavaOne: Efficiently building and deploying microservicesJavaOne: Efficiently building and deploying microservices
JavaOne: Efficiently building and deploying microservices
 

More from Betclic Everest Group Tech Team

Mini training - Reactive Extensions (Rx)
Mini training - Reactive Extensions (Rx)Mini training - Reactive Extensions (Rx)
Mini training - Reactive Extensions (Rx)
Betclic Everest Group Tech Team
 
Mini training - Moving to xUnit.net
Mini training - Moving to xUnit.netMini training - Moving to xUnit.net
Mini training - Moving to xUnit.net
Betclic Everest Group Tech Team
 
Mini training - Introduction to Microsoft Azure Storage
Mini training - Introduction to Microsoft Azure StorageMini training - Introduction to Microsoft Azure Storage
Mini training - Introduction to Microsoft Azure Storage
Betclic Everest Group Tech Team
 
Akka.Net
Akka.NetAkka.Net
Mini training- Scenario Driven Design
Mini training- Scenario Driven DesignMini training- Scenario Driven Design
Mini training- Scenario Driven Design
Betclic Everest Group Tech Team
 
Email Management in Outlook
Email Management in OutlookEmail Management in Outlook
Email Management in Outlook
Betclic Everest Group Tech Team
 
Mini-Training: SSO with Windows Identity Foundation
Mini-Training: SSO with Windows Identity FoundationMini-Training: SSO with Windows Identity Foundation
Mini-Training: SSO with Windows Identity Foundation
Betclic Everest Group Tech Team
 
Training - What is Performance ?
Training  - What is Performance ?Training  - What is Performance ?
Training - What is Performance ?
Betclic Everest Group Tech Team
 
Mini-Training: Docker
Mini-Training: DockerMini-Training: Docker
Mini-Training: Docker
Betclic Everest Group Tech Team
 
Mini Training Flyway
Mini Training FlywayMini Training Flyway
Mini Training Flyway
Betclic Everest Group Tech Team
 
Mini-Training: NDepend
Mini-Training: NDependMini-Training: NDepend
Mini-Training: NDepend
Betclic Everest Group Tech Team
 
Management 3.0 Workout
Management 3.0 WorkoutManagement 3.0 Workout
Management 3.0 Workout
Betclic Everest Group Tech Team
 
Lean for Business
Lean for BusinessLean for Business
Short-Training asp.net vNext
Short-Training asp.net vNextShort-Training asp.net vNext
Short-Training asp.net vNext
Betclic Everest Group Tech Team
 
Training – Going Async
Training – Going AsyncTraining – Going Async
Training – Going Async
Betclic Everest Group Tech Team
 
Mini-Training: Mobile UX Trends
Mini-Training: Mobile UX TrendsMini-Training: Mobile UX Trends
Mini-Training: Mobile UX Trends
Betclic Everest Group Tech Team
 
Training: MVVM Pattern
Training: MVVM PatternTraining: MVVM Pattern
Training: MVVM Pattern
Betclic Everest Group Tech Team
 
Mini-training: Personalization & Recommendation Demystified
Mini-training: Personalization & Recommendation DemystifiedMini-training: Personalization & Recommendation Demystified
Mini-training: Personalization & Recommendation Demystified
Betclic Everest Group Tech Team
 
Mini-training: Let’s Git It!
Mini-training: Let’s Git It!Mini-training: Let’s Git It!
Mini-training: Let’s Git It!
Betclic Everest Group Tech Team
 
AngularJS Best Practices
AngularJS Best PracticesAngularJS Best Practices
AngularJS Best Practices
Betclic Everest Group Tech Team
 

More from Betclic Everest Group Tech Team (20)

Mini training - Reactive Extensions (Rx)
Mini training - Reactive Extensions (Rx)Mini training - Reactive Extensions (Rx)
Mini training - Reactive Extensions (Rx)
 
Mini training - Moving to xUnit.net
Mini training - Moving to xUnit.netMini training - Moving to xUnit.net
Mini training - Moving to xUnit.net
 
Mini training - Introduction to Microsoft Azure Storage
Mini training - Introduction to Microsoft Azure StorageMini training - Introduction to Microsoft Azure Storage
Mini training - Introduction to Microsoft Azure Storage
 
Akka.Net
Akka.NetAkka.Net
Akka.Net
 
Mini training- Scenario Driven Design
Mini training- Scenario Driven DesignMini training- Scenario Driven Design
Mini training- Scenario Driven Design
 
Email Management in Outlook
Email Management in OutlookEmail Management in Outlook
Email Management in Outlook
 
Mini-Training: SSO with Windows Identity Foundation
Mini-Training: SSO with Windows Identity FoundationMini-Training: SSO with Windows Identity Foundation
Mini-Training: SSO with Windows Identity Foundation
 
Training - What is Performance ?
Training  - What is Performance ?Training  - What is Performance ?
Training - What is Performance ?
 
Mini-Training: Docker
Mini-Training: DockerMini-Training: Docker
Mini-Training: Docker
 
Mini Training Flyway
Mini Training FlywayMini Training Flyway
Mini Training Flyway
 
Mini-Training: NDepend
Mini-Training: NDependMini-Training: NDepend
Mini-Training: NDepend
 
Management 3.0 Workout
Management 3.0 WorkoutManagement 3.0 Workout
Management 3.0 Workout
 
Lean for Business
Lean for BusinessLean for Business
Lean for Business
 
Short-Training asp.net vNext
Short-Training asp.net vNextShort-Training asp.net vNext
Short-Training asp.net vNext
 
Training – Going Async
Training – Going AsyncTraining – Going Async
Training – Going Async
 
Mini-Training: Mobile UX Trends
Mini-Training: Mobile UX TrendsMini-Training: Mobile UX Trends
Mini-Training: Mobile UX Trends
 
Training: MVVM Pattern
Training: MVVM PatternTraining: MVVM Pattern
Training: MVVM Pattern
 
Mini-training: Personalization & Recommendation Demystified
Mini-training: Personalization & Recommendation DemystifiedMini-training: Personalization & Recommendation Demystified
Mini-training: Personalization & Recommendation Demystified
 
Mini-training: Let’s Git It!
Mini-training: Let’s Git It!Mini-training: Let’s Git It!
Mini-training: Let’s Git It!
 
AngularJS Best Practices
AngularJS Best PracticesAngularJS Best Practices
AngularJS Best Practices
 

Recently uploaded

Operating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptxOperating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptx
Pravash Chandra Das
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
Chart Kalyan
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
Zilliz
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
tolgahangng
 
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStrDeep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
saastr
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
Zilliz
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Wask
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
Postman
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
ssuserfac0301
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
Zilliz
 
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Tatiana Kojar
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
kumardaparthi1024
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
Intelisync
 
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - HiikeSystem Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
Hiike
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
panagenda
 

Recently uploaded (20)

Operating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptxOperating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptx
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
 
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStrDeep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
Deep Dive: Getting Funded with Jason Jason Lemkin Founder & CEO @ SaaStr
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
 
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
 
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - HiikeSystem Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
 

Mini-Training: Message Brokers

  • 1. An overview of message brokers
  • 2. Agenda • Definitions • Messaging Systems : purpose & features • Frameworks • Use Cases, Demo • Conclusion
  • 3. LEARN THE DIFFERENCE IT COULD SAVE YOUR LIFE
  • 4. Message Broker • Component of « MOM », Message Oriented Middleware • An architectural pattern for message validation, transformation and routing. • Mediate communication amongst applications, minimizing the mutual awareness that application should have of each other, effectively implementing decoupling  Integrate applications without enforcing a common interface
  • 5. Purpose • Route messages to one or more of many destinations (unicast / multicast) • Transform messages to an alternative representation (mapping) • Perform message aggregation, decomposition/recomposition of messages • Respond to events or errors (“triggering”) • Provide content and topic-based message routing using the publish– subscribe pattern. 5
  • 6. Characteristics & Features Producer (multiple or not) • • • • • • • push Broker pull Consumer (multiple or not) Topology (1-1, 1-N, N-N) Compression Timed or permanent persistence Disconnect detection, error recovery Acknowleding, ordering, retries Guaranteed delivery Combination of features : delivery + ordering : “EOID” exactly once in order 6
  • 7. Common Apps JMS Implementations Active MQ, Jboss Messaging, Glassfish AMQP Implementations Rabbit MQ Lightweight / non-standardized ZeroMQ, Finagle, Kafka, Beanstalkd Commercial MOMs IBM Websphere MQ, MSMQ (Microsoft) BEA Weblogic, SAP Netweaver Enterprise Service Buses Biztalk, Websphere, Oracle Service Bus 7
  • 8. AMQP • Some key AMQP messaging protocol requirements – Internet protocol - like HTTP, TCP – but ASYNCHRONOUS – Where to send messages (Routing) – How to get there (Delivery) – What goes in must come out (Fidelity) - Each message is stateless - Consumers create queues; these buffer messages for push to consumers - Queues are stateful, ordered, and can be persistent, transient, private, shared. - Exchanges are stateless routing tables. 8
  • 9. RabbitMQ • Implements AMQP • Written in Erlang, a functional language known for its ability for concurrent processing, and backed by Mnesia, Erlang’s powerful persistence database. • Used by NASA’s Nebula Cloud Computing Platform, VMWare, AT&T Interactive, Digg, BBC, Nokia and …. 9
  • 10. Unibet use of Rabbit MQ 10
  • 12. What about SQL Server Service Broker? SQL Server Service Broker : - native support for messaging and queuing applications - use the Sql Server Database Engine components to communicate between disparate databases. - handles the communication paths in the context of transactioned conversation. 12
  • 14. Links • • • http://fr.slideshare.net/MaxAlexejev/modern-distributed-messaging-and-rpc http://msdn.microsoft.com/en-us/library/ms978706.aspx : « broker » pattern http://blog.pasker.net/2008/06/16/you-might-need-messaging-if/ : why you might need messaging  • http://fr.slideshare.net/somic/introduction-to-amqp-messaging-with-rabbitmq/ : AMQP functionnalities in detail http://libfugu.so/blog/2013/09/24/rabbitmq-a-quick-and-dirty-introduction http://www.rabbitmq.com/resources/RabbitMQ_usecase_StefanNorberg_Unibet _10xScalabilityAtHalfTheCost.pdf : Rabbit MQ at Unibet, the story of Kevin and his candy bag • • • http://www.codeproject.com/Articles/11795/Introducing-Distributed-Messagingusing-Service-Br : good description of Sql Server Service Broker 14
  • 15. 15
  • 16. Find out more • On https://techblog.betclicgroup.com/
  • 17. About Betclic • • • Betclic Everest Group, one of the world leaders in online gaming, has a unique portfolio comprising various complementary international brands: Betclic, Everest Gaming, bet-at-home.com, Expekt… Active in 100 countries with more than 12 million customers worldwide, the Group is committed to promoting secure and responsible gaming and is a member of several international professional associations including the EGBA (European Gaming and Betting Association) and the ESSA (European Sports Security Association). Through our brands, Betclic Everest Group places expertise, technological know-how and security at the heart of our strategy to deliver an on-line gaming offer attuned to the passion of our players.