SlideShare uma empresa Scribd logo
1 de 17
Baixar para ler offline
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.

Mais conteúdo relacionado

Mais procurados

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 webinarChanaka Fernando
 
Introduction to Apache ActiveMQ Artemis
Introduction to Apache ActiveMQ ArtemisIntroduction to Apache ActiveMQ Artemis
Introduction to Apache ActiveMQ ArtemisYoshimasa Tanabe
 
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 scaleMatteo Merli
 
Apache ActiveMQ - Enterprise messaging in action
Apache ActiveMQ - Enterprise messaging in actionApache ActiveMQ - Enterprise messaging in action
Apache ActiveMQ - Enterprise messaging in actiondejanb
 
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 JMSBruce Snyder
 
Apache Kafka - Messaging System Overview
Apache Kafka - Messaging System OverviewApache Kafka - Messaging System Overview
Apache Kafka - Messaging System OverviewDmitry Tolpeko
 
Apache ActiveMQ and Apache ServiceMix
Apache ActiveMQ and Apache ServiceMixApache ActiveMQ and Apache ServiceMix
Apache ActiveMQ and Apache ServiceMixBruce Snyder
 
Apache Kafka - Free Friday
Apache Kafka - Free FridayApache Kafka - Free Friday
Apache Kafka - Free FridayOtávio Carvalho
 
ActiveMQ In Action
ActiveMQ In ActionActiveMQ In Action
ActiveMQ In ActionBruce Snyder
 
Apache Kafka Architecture & Fundamentals Explained
Apache Kafka Architecture & Fundamentals ExplainedApache Kafka Architecture & Fundamentals Explained
Apache Kafka Architecture & Fundamentals Explainedconfluent
 
ActiveMQ In Action - ApacheCon 2011
ActiveMQ In Action - ApacheCon 2011ActiveMQ In Action - ApacheCon 2011
ActiveMQ In Action - ApacheCon 2011Bruce Snyder
 
Kafka as Message Broker
Kafka as Message BrokerKafka as Message Broker
Kafka as Message BrokerHaluan Irsad
 
Enterprise Messaging with Apache ActiveMQ
Enterprise Messaging with Apache ActiveMQEnterprise Messaging with Apache ActiveMQ
Enterprise Messaging with Apache ActiveMQelliando dias
 
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 jukeboxMickaë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 architectureMauro Servienti
 

Mais procurados (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
 

Destaque

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 DataFadi Mujahid
 
COMPANY PROFILE
COMPANY PROFILECOMPANY PROFILE
COMPANY PROFILEmmolteni
 
Eco Power (Company Profile)
Eco Power (Company Profile)Eco Power (Company Profile)
Eco Power (Company Profile)reybiz
 
company overview
company overviewcompany overview
company overviewntapos
 
Kings Profile Power Point Final
Kings Profile Power Point FinalKings Profile Power Point Final
Kings Profile Power Point Finalsherwin_14
 
Moving Online - MIPA Preso
Moving Online - MIPA PresoMoving Online - MIPA Preso
Moving Online - MIPA PresoMedia Now STL
 
PHOTONICS POWER Company Profile
PHOTONICS POWER Company ProfilePHOTONICS POWER Company Profile
PHOTONICS POWER Company ProfileGAiazzi
 
WSI Net Power Company Profile
WSI Net Power Company ProfileWSI Net Power Company Profile
WSI Net Power Company ProfileWSI Net Power
 
Reverside Company Overview
Reverside Company OverviewReverside Company Overview
Reverside Company OverviewRajib Gupta
 
The Octamec Group Company Profile
The Octamec Group Company ProfileThe Octamec Group Company Profile
The Octamec Group Company Profilesrinivaskoctamec
 
How to make a company profile
How to make a company profileHow to make a company profile
How to make a company profilebugswhiz
 
IT Service Point Company Profile
IT Service Point Company ProfileIT Service Point Company Profile
IT Service Point Company Profilegopi nath
 
Message Queues a basic overview
Message Queues a basic overviewMessage Queues a basic overview
Message Queues a basic overviewGeshan Manandhar
 
General Profile Of The Firm
General Profile Of The FirmGeneral Profile Of The Firm
General Profile Of The Firmpsshahca
 
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 8James Kiger
 
Company profile new
Company profile newCompany profile new
Company profile newEsimple srl
 
Power point my profile
Power point my profilePower point my profile
Power point my profilesneider_garay
 

Destaque (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
 

Semelhante a Mini-Training: Message Brokers

The Overview of Microservices Architecture
The Overview of Microservices ArchitectureThe Overview of Microservices Architecture
The Overview of Microservices ArchitectureParia Heidari
 
Sai mule esb batch
Sai mule esb batchSai mule esb batch
Sai mule esb batchsaikiran6423
 
Ashok mule esb
Ashok mule esbAshok mule esb
Ashok mule esbaskumar037
 
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 DevelopmentAndrew Coleman
 
JMS Providers Overview
JMS Providers OverviewJMS Providers Overview
JMS Providers OverviewVadym 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 CamelKapil Kumar
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to MicroservicesMahmoudZidan41
 
JavaOne: Efficiently building and deploying microservices
JavaOne: Efficiently building and deploying microservicesJavaOne: Efficiently building and deploying microservices
JavaOne: Efficiently building and deploying microservicesBart Blommaerts
 

Semelhante a 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 esb kranthi
Mule esb kranthiMule esb kranthi
Mule esb kranthi
 
Mule esb kranthi
Mule esb kranthiMule esb kranthi
Mule esb kranthi
 
Mule esb
Mule esb Mule esb
Mule esb
 
Mule
MuleMule
Mule
 
Esb process
Esb processEsb process
Esb process
 
Mule
MuleMule
Mule
 
Sai mule esb batch
Sai mule esb batchSai mule esb batch
Sai mule esb batch
 
Ashok mule esb
Ashok mule esbAshok mule esb
Ashok mule esb
 
Mule slides
Mule slides Mule slides
Mule slides
 
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
 

Mais de Betclic Everest Group Tech Team

Mini-training: Personalization & Recommendation Demystified
Mini-training: Personalization & Recommendation DemystifiedMini-training: Personalization & Recommendation Demystified
Mini-training: Personalization & Recommendation DemystifiedBetclic Everest Group Tech Team
 

Mais de 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
 

Último

Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 

Último (20)

Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 

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.