SlideShare a Scribd company logo
1 of 16
Download to read offline
Message Queues 
A basic overview
Geshan Manandhar 
Quality and Maintenance Lead, Namshi.com 
@geshan 
geshan.com.np
Index 
What is Message Queue(MQ) 
MQ basics - AMQP 
Benefits 
Rabbit MQ 
Our setup/stack 
When to use it /Practical Usecase 
Logging and monitoring 
Conclusion
What is Message Queue 
"message queues and mailboxes are software-engineering 
components used for inter-process communication (IPC), or for 
inter-thread communication within the same process. They use a 
queue for messaging – the passing of control or of content." - 
Wikipedia 
Message queue is a software components that allow producers to 
produce message to a queue managed by a message broker, these 
message are asynchronously consumed by consumers.
Message Queue Basics 
Protocols : Advanced Message Queueing Protocol(AMQP) and 
Streaming Text Oriented Messaging Protocol(STOMP) 
Types of Queue: Direct, Topic and Fanout 
Producer/Publisher 
Message Broker - Queue Exchange 
Queue 
Consumer
Benefits of MQ 
Decoupling 
Scalability 
Reliability 
Fanout - Same message to multiple queues (Pub/Sub)
Rabbit MQ
Rabbit MQ - features 
Robust messaging for applications 
Easy to use 
Runs on all major operating systems 
Supports a huge number of developer platforms 
Open source and commercially supported
Our Software stack/services 
relating to with Rabbit MQ 
Symfony 2 with old sound rabbit mq bundle and Monolog 
Rabbit Mq on http://www.cloudamqp.com/ 
Service Oriented Architecture (SOA) with 3rd party API 
integrations
When to use message queues 
Some practical use cases 
Backend -> Frontend sync (db to NOSQL/Memcache) 
Communication between multiple internal systems (without API) 
Asynchronous 3rd party API calls 
Notifications like email and sms 
Handling large request asynchronously 
Processing intensive tasks- like image resize
Logging and monitoring is 
vital 
Only access and error logs from web server and database are surely 
not enough 
Logs are first class citizen, adopt active logging from application 
level.(Monolog) 
Use dedicated log management system like GrayLog 2 
Monitor application activity in real-time with services like 
NewRelic 
Log optimally and verbose enough to give enough information 
about the context.
Conclusion/Recap 
Communication between two systems can be done even without 
APIs 
Language agnostic implementation is enable by using message 
queues 
Message queues could be that answer you were looking for, to 
communicate between different systems 
For scalability, decoupling and reliability utilize message queues 
You could potentially scale to 1 million message per second : 
Pivotal 
Logging and monitoring are inevitable when doing asynchronous 
processing
Questions???
Credits 
http://keyholesoftware.com/2013/05/13/messaging-with-rabbitmq/ 
https://www.flickr.com/photos/i8ipod/9028050858 
https://www.flickr.com/photos/oberazzi/318947873/
Some programming mantras to remember.

More Related Content

Viewers also liked

COMPANY PROFILE
COMPANY PROFILECOMPANY PROFILE
COMPANY PROFILEmmolteni
 
company overview
company overviewcompany overview
company overviewntapos
 
WSI Net Power Company Profile
WSI Net Power Company ProfileWSI Net Power Company Profile
WSI Net Power Company ProfileWSI Net Power
 
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
 
Eco Power (Company Profile)
Eco Power (Company Profile)Eco Power (Company Profile)
Eco Power (Company Profile)reybiz
 
PHOTONICS POWER Company Profile
PHOTONICS POWER Company ProfilePHOTONICS POWER Company Profile
PHOTONICS POWER Company ProfileGAiazzi
 
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
 
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
 
General Profile Of The Firm
General Profile Of The FirmGeneral Profile Of The Firm
General Profile Of The Firmpsshahca
 
Power point my profile
Power point my profilePower point my profile
Power point my profilesneider_garay
 
Company profile new
Company profile newCompany profile new
Company profile newEsimple srl
 
Grace Solar-Company Profile
Grace Solar-Company ProfileGrace Solar-Company Profile
Grace Solar-Company ProfileSara Malik
 

Viewers also liked (17)

COMPANY PROFILE
COMPANY PROFILECOMPANY PROFILE
COMPANY PROFILE
 
company overview
company overviewcompany overview
company overview
 
WSI Net Power Company Profile
WSI Net Power Company ProfileWSI Net Power Company Profile
WSI Net Power Company Profile
 
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
 
Company profile
Company profileCompany profile
Company profile
 
SANLEC
SANLECSANLEC
SANLEC
 
Eco Power (Company Profile)
Eco Power (Company Profile)Eco Power (Company Profile)
Eco Power (Company Profile)
 
PHOTONICS POWER Company Profile
PHOTONICS POWER Company ProfilePHOTONICS POWER Company Profile
PHOTONICS POWER 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
 
Mini-Training: Message Brokers
Mini-Training: Message BrokersMini-Training: Message Brokers
Mini-Training: Message Brokers
 
IT Service Point Company Profile
IT Service Point Company ProfileIT Service Point Company Profile
IT Service Point Company Profile
 
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
 
General Profile Of The Firm
General Profile Of The FirmGeneral Profile Of The Firm
General Profile Of The Firm
 
Power point my profile
Power point my profilePower point my profile
Power point my profile
 
Company profile new
Company profile newCompany profile new
Company profile new
 
Grace Solar-Company Profile
Grace Solar-Company ProfileGrace Solar-Company Profile
Grace Solar-Company Profile
 

Similar to Message Queues a basic overview

[@NaukriEngineering] Messaging Queues
[@NaukriEngineering] Messaging Queues[@NaukriEngineering] Messaging Queues
[@NaukriEngineering] Messaging QueuesNaukri.com
 
Message Broker implementation in Kubernetes
Message Broker implementation in KubernetesMessage Broker implementation in Kubernetes
Message Broker implementation in KubernetesSuman Chakraborty
 
ActiveMQ interview Questions and Answers
ActiveMQ interview Questions and AnswersActiveMQ interview Questions and Answers
ActiveMQ interview Questions and Answersjeetendra mandal
 
The Art of Message Queues - TEKX
The Art of Message Queues - TEKXThe Art of Message Queues - TEKX
The Art of Message Queues - TEKXMike Willbanks
 
øMQ Vortrag
øMQ VortragøMQ Vortrag
øMQ Vortragmirosso25
 
Enterprise messaging with jms
Enterprise messaging with jmsEnterprise messaging with jms
Enterprise messaging with jmsSridhar Reddy
 
f2f-overview12.ppt
f2f-overview12.pptf2f-overview12.ppt
f2f-overview12.pptwentaozhu3
 
f2f-overview1-presentation about rabbitmq and middleware
f2f-overview1-presentation about rabbitmq and middlewaref2f-overview1-presentation about rabbitmq and middleware
f2f-overview1-presentation about rabbitmq and middlewarendonikristi98
 
SignalR or RabbitMQ: Which is the better messaging tool?
SignalR or RabbitMQ: Which is the better messaging tool?SignalR or RabbitMQ: Which is the better messaging tool?
SignalR or RabbitMQ: Which is the better messaging tool?Tien Nguyen
 
Velocity Conference '13: Asynchronous messaging for performance optimization,...
Velocity Conference '13: Asynchronous messaging for performance optimization,...Velocity Conference '13: Asynchronous messaging for performance optimization,...
Velocity Conference '13: Asynchronous messaging for performance optimization,...Al Sargent
 
RabbitMQ interview Questions and Answers
RabbitMQ interview Questions and AnswersRabbitMQ interview Questions and Answers
RabbitMQ interview Questions and Answersjeetendra mandal
 
Messaging - RabbitMQ, Azure (Service Bus), Docker and Azure Functions
Messaging - RabbitMQ, Azure (Service Bus), Docker and Azure FunctionsMessaging - RabbitMQ, Azure (Service Bus), Docker and Azure Functions
Messaging - RabbitMQ, Azure (Service Bus), Docker and Azure FunctionsJohn Staveley
 
Présentation des bus de message broker vs bus
Présentation des bus de message broker vs busPrésentation des bus de message broker vs bus
Présentation des bus de message broker vs busThierry Gayet
 
Websphere MQ admin guide
Websphere MQ admin guideWebsphere MQ admin guide
Websphere MQ admin guideRam Babu
 

Similar to Message Queues a basic overview (20)

[@NaukriEngineering] Messaging Queues
[@NaukriEngineering] Messaging Queues[@NaukriEngineering] Messaging Queues
[@NaukriEngineering] Messaging Queues
 
Message Broker implementation in Kubernetes
Message Broker implementation in KubernetesMessage Broker implementation in Kubernetes
Message Broker implementation in Kubernetes
 
ActiveMQ interview Questions and Answers
ActiveMQ interview Questions and AnswersActiveMQ interview Questions and Answers
ActiveMQ interview Questions and Answers
 
The Art of Message Queues - TEKX
The Art of Message Queues - TEKXThe Art of Message Queues - TEKX
The Art of Message Queues - TEKX
 
øMQ Vortrag
øMQ VortragøMQ Vortrag
øMQ Vortrag
 
Enterprise messaging with jms
Enterprise messaging with jmsEnterprise messaging with jms
Enterprise messaging with jms
 
f2f-overview12.ppt
f2f-overview12.pptf2f-overview12.ppt
f2f-overview12.ppt
 
f2f-overview1-presentation about rabbitmq and middleware
f2f-overview1-presentation about rabbitmq and middlewaref2f-overview1-presentation about rabbitmq and middleware
f2f-overview1-presentation about rabbitmq and middleware
 
SignalR or RabbitMQ: Which is the better messaging tool?
SignalR or RabbitMQ: Which is the better messaging tool?SignalR or RabbitMQ: Which is the better messaging tool?
SignalR or RabbitMQ: Which is the better messaging tool?
 
Red book mq
Red book mqRed book mq
Red book mq
 
Velocity Conference '13: Asynchronous messaging for performance optimization,...
Velocity Conference '13: Asynchronous messaging for performance optimization,...Velocity Conference '13: Asynchronous messaging for performance optimization,...
Velocity Conference '13: Asynchronous messaging for performance optimization,...
 
RabbitMq
RabbitMqRabbitMq
RabbitMq
 
RabbitMQ interview Questions and Answers
RabbitMQ interview Questions and AnswersRabbitMQ interview Questions and Answers
RabbitMQ interview Questions and Answers
 
Microservices-101
Microservices-101Microservices-101
Microservices-101
 
Messaging - RabbitMQ, Azure (Service Bus), Docker and Azure Functions
Messaging - RabbitMQ, Azure (Service Bus), Docker and Azure FunctionsMessaging - RabbitMQ, Azure (Service Bus), Docker and Azure Functions
Messaging - RabbitMQ, Azure (Service Bus), Docker and Azure Functions
 
IBM MQ Series For ZOS
IBM MQ Series For ZOSIBM MQ Series For ZOS
IBM MQ Series For ZOS
 
Unit 4.pptx
Unit 4.pptxUnit 4.pptx
Unit 4.pptx
 
IPC manufacturer
IPC manufacturerIPC manufacturer
IPC manufacturer
 
Présentation des bus de message broker vs bus
Présentation des bus de message broker vs busPrésentation des bus de message broker vs bus
Présentation des bus de message broker vs bus
 
Websphere MQ admin guide
Websphere MQ admin guideWebsphere MQ admin guide
Websphere MQ admin guide
 

More from Geshan Manandhar

Are logs a software engineer’s best friend? Yes -- follow these best practices
Are logs a software engineer’s best friend? Yes -- follow these best practicesAre logs a software engineer’s best friend? Yes -- follow these best practices
Are logs a software engineer’s best friend? Yes -- follow these best practicesGeshan Manandhar
 
We lost $ 20.5K in one day and how we could have saved it… hint: better autom...
We lost $ 20.5K in one day and how we could have saved it… hint: better autom...We lost $ 20.5K in one day and how we could have saved it… hint: better autom...
We lost $ 20.5K in one day and how we could have saved it… hint: better autom...Geshan Manandhar
 
Moving from A and B to 150 microservices, the journey, and learnings
Moving from A and B to 150 microservices, the journey, and learningsMoving from A and B to 150 microservices, the journey, and learnings
Moving from A and B to 150 microservices, the journey, and learningsGeshan Manandhar
 
Adopt a painless continuous delivery culture, add more business value
Adopt a painless continuous delivery culture, add more business valueAdopt a painless continuous delivery culture, add more business value
Adopt a painless continuous delivery culture, add more business valueGeshan Manandhar
 
Embrace chatops, stop installing deployment software - Laracon EU 2016
Embrace chatops, stop installing deployment software - Laracon EU 2016Embrace chatops, stop installing deployment software - Laracon EU 2016
Embrace chatops, stop installing deployment software - Laracon EU 2016Geshan Manandhar
 
Do You Git Your Code? Follow Simplified Gitflow Branching Model to Improve Pr...
Do You Git Your Code? Follow Simplified Gitflow Branching Model to Improve Pr...Do You Git Your Code? Follow Simplified Gitflow Branching Model to Improve Pr...
Do You Git Your Code? Follow Simplified Gitflow Branching Model to Improve Pr...Geshan Manandhar
 
Embrace chatOps, stop installing deployment software
Embrace chatOps, stop installing deployment softwareEmbrace chatOps, stop installing deployment software
Embrace chatOps, stop installing deployment softwareGeshan Manandhar
 
7 rules of simple and maintainable code
7 rules of simple and maintainable code7 rules of simple and maintainable code
7 rules of simple and maintainable codeGeshan Manandhar
 
Software engineering In Nepal mid 2015 part 01
Software engineering In Nepal mid 2015 part 01Software engineering In Nepal mid 2015 part 01
Software engineering In Nepal mid 2015 part 01Geshan Manandhar
 
How to become a better software company technically
How to become a better software company technicallyHow to become a better software company technically
How to become a better software company technicallyGeshan Manandhar
 
Things I wished I knew while doing my tech bachelor / undergraduate
Things I wished I knew while doing my tech bachelor / undergraduateThings I wished I knew while doing my tech bachelor / undergraduate
Things I wished I knew while doing my tech bachelor / undergraduateGeshan Manandhar
 
Most popular brands, people on facebook in nepal as of 2013 q4
Most popular brands, people on facebook in nepal as of 2013 q4Most popular brands, people on facebook in nepal as of 2013 q4
Most popular brands, people on facebook in nepal as of 2013 q4Geshan Manandhar
 
Drupal 7 basic setup and contrib modules for a brochure website
Drupal 7 basic setup and contrib modules for a brochure websiteDrupal 7 basic setup and contrib modules for a brochure website
Drupal 7 basic setup and contrib modules for a brochure websiteGeshan Manandhar
 
Git intro hands on windows with msysgit
Git intro hands on windows with msysgitGit intro hands on windows with msysgit
Git intro hands on windows with msysgitGeshan Manandhar
 
Drupal 7 install with modules and themes
Drupal 7 install with modules and themesDrupal 7 install with modules and themes
Drupal 7 install with modules and themesGeshan Manandhar
 
Business Rules Logical Experssion and SBVR
Business Rules Logical Experssion and SBVRBusiness Rules Logical Experssion and SBVR
Business Rules Logical Experssion and SBVRGeshan Manandhar
 
Drupal A non technical Introduction
Drupal A non technical IntroductionDrupal A non technical Introduction
Drupal A non technical IntroductionGeshan Manandhar
 

More from Geshan Manandhar (20)

Are logs a software engineer’s best friend? Yes -- follow these best practices
Are logs a software engineer’s best friend? Yes -- follow these best practicesAre logs a software engineer’s best friend? Yes -- follow these best practices
Are logs a software engineer’s best friend? Yes -- follow these best practices
 
We lost $ 20.5K in one day and how we could have saved it… hint: better autom...
We lost $ 20.5K in one day and how we could have saved it… hint: better autom...We lost $ 20.5K in one day and how we could have saved it… hint: better autom...
We lost $ 20.5K in one day and how we could have saved it… hint: better autom...
 
Moving from A and B to 150 microservices, the journey, and learnings
Moving from A and B to 150 microservices, the journey, and learningsMoving from A and B to 150 microservices, the journey, and learnings
Moving from A and B to 150 microservices, the journey, and learnings
 
Adopt a painless continuous delivery culture, add more business value
Adopt a painless continuous delivery culture, add more business valueAdopt a painless continuous delivery culture, add more business value
Adopt a painless continuous delivery culture, add more business value
 
Embrace chatops, stop installing deployment software - Laracon EU 2016
Embrace chatops, stop installing deployment software - Laracon EU 2016Embrace chatops, stop installing deployment software - Laracon EU 2016
Embrace chatops, stop installing deployment software - Laracon EU 2016
 
Do You Git Your Code? Follow Simplified Gitflow Branching Model to Improve Pr...
Do You Git Your Code? Follow Simplified Gitflow Branching Model to Improve Pr...Do You Git Your Code? Follow Simplified Gitflow Branching Model to Improve Pr...
Do You Git Your Code? Follow Simplified Gitflow Branching Model to Improve Pr...
 
Embrace chatOps, stop installing deployment software
Embrace chatOps, stop installing deployment softwareEmbrace chatOps, stop installing deployment software
Embrace chatOps, stop installing deployment software
 
7 rules of simple and maintainable code
7 rules of simple and maintainable code7 rules of simple and maintainable code
7 rules of simple and maintainable code
 
Software engineering In Nepal mid 2015 part 01
Software engineering In Nepal mid 2015 part 01Software engineering In Nepal mid 2015 part 01
Software engineering In Nepal mid 2015 part 01
 
A simplified Gitflow
A simplified GitflowA simplified Gitflow
A simplified Gitflow
 
How to become a better software company technically
How to become a better software company technicallyHow to become a better software company technically
How to become a better software company technically
 
Things I wished I knew while doing my tech bachelor / undergraduate
Things I wished I knew while doing my tech bachelor / undergraduateThings I wished I knew while doing my tech bachelor / undergraduate
Things I wished I knew while doing my tech bachelor / undergraduate
 
Most popular brands, people on facebook in nepal as of 2013 q4
Most popular brands, people on facebook in nepal as of 2013 q4Most popular brands, people on facebook in nepal as of 2013 q4
Most popular brands, people on facebook in nepal as of 2013 q4
 
Drupal 7 basic setup and contrib modules for a brochure website
Drupal 7 basic setup and contrib modules for a brochure websiteDrupal 7 basic setup and contrib modules for a brochure website
Drupal 7 basic setup and contrib modules for a brochure website
 
Git intro hands on windows with msysgit
Git intro hands on windows with msysgitGit intro hands on windows with msysgit
Git intro hands on windows with msysgit
 
Drupal 7 install with modules and themes
Drupal 7 install with modules and themesDrupal 7 install with modules and themes
Drupal 7 install with modules and themes
 
Drupal introduction
Drupal introductionDrupal introduction
Drupal introduction
 
No sql
No sqlNo sql
No sql
 
Business Rules Logical Experssion and SBVR
Business Rules Logical Experssion and SBVRBusiness Rules Logical Experssion and SBVR
Business Rules Logical Experssion and SBVR
 
Drupal A non technical Introduction
Drupal A non technical IntroductionDrupal A non technical Introduction
Drupal A non technical Introduction
 

Recently uploaded

Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
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
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
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
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
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
 
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
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdfChristopherTHyatt
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
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
 

Recently uploaded (20)

Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
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
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
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
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
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
 
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
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
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
 

Message Queues a basic overview

  • 1. Message Queues A basic overview
  • 2. Geshan Manandhar Quality and Maintenance Lead, Namshi.com @geshan geshan.com.np
  • 3. Index What is Message Queue(MQ) MQ basics - AMQP Benefits Rabbit MQ Our setup/stack When to use it /Practical Usecase Logging and monitoring Conclusion
  • 4. What is Message Queue "message queues and mailboxes are software-engineering components used for inter-process communication (IPC), or for inter-thread communication within the same process. They use a queue for messaging – the passing of control or of content." - Wikipedia Message queue is a software components that allow producers to produce message to a queue managed by a message broker, these message are asynchronously consumed by consumers.
  • 5. Message Queue Basics Protocols : Advanced Message Queueing Protocol(AMQP) and Streaming Text Oriented Messaging Protocol(STOMP) Types of Queue: Direct, Topic and Fanout Producer/Publisher Message Broker - Queue Exchange Queue Consumer
  • 6. Benefits of MQ Decoupling Scalability Reliability Fanout - Same message to multiple queues (Pub/Sub)
  • 8. Rabbit MQ - features Robust messaging for applications Easy to use Runs on all major operating systems Supports a huge number of developer platforms Open source and commercially supported
  • 9. Our Software stack/services relating to with Rabbit MQ Symfony 2 with old sound rabbit mq bundle and Monolog Rabbit Mq on http://www.cloudamqp.com/ Service Oriented Architecture (SOA) with 3rd party API integrations
  • 10. When to use message queues Some practical use cases Backend -> Frontend sync (db to NOSQL/Memcache) Communication between multiple internal systems (without API) Asynchronous 3rd party API calls Notifications like email and sms Handling large request asynchronously Processing intensive tasks- like image resize
  • 11. Logging and monitoring is vital Only access and error logs from web server and database are surely not enough Logs are first class citizen, adopt active logging from application level.(Monolog) Use dedicated log management system like GrayLog 2 Monitor application activity in real-time with services like NewRelic Log optimally and verbose enough to give enough information about the context.
  • 12. Conclusion/Recap Communication between two systems can be done even without APIs Language agnostic implementation is enable by using message queues Message queues could be that answer you were looking for, to communicate between different systems For scalability, decoupling and reliability utilize message queues You could potentially scale to 1 million message per second : Pivotal Logging and monitoring are inevitable when doing asynchronous processing
  • 13.
  • 16. Some programming mantras to remember.