SlideShare a Scribd company logo
By Ramakrishna Narkedamilli
Overview:
Apache ActiveMQ is the most popular and powerful open source messaging and
Integration Patterns server.
Apache ActiveMQ is fast, supports many Cross Language Clients. Using this we can
enable to message throttling, redelivery, delay of messages.
In this Presentation will going to see
 ActiveMQ Installation and configurations
 DeadLetter queue configuration
 Configuring ActiveMQ in clusters
 Running ActiveMQ in clusters
ActiveMQ Installation and configurations:
Prerequisites
 ActiveMQ installer -- apache-activemq-5.8.0-bin.zip
 Database:- Microsoft SQL Server
Limitations:
The configuration is done in activemq.xml and the configuration tags used in the
code works with apache-activemq version 5.8.0.It might change according to latest
versions.
Steps to Install
 Extract apache-activemq-5.8.0-bin.zip to a folder eg:- Applications where it will be
running
 It will create the folder apache-activemq-5.8.0 in the Applications folder
 Go to the folder <apache-activemq-5.8.0bins> and start the activemq.bat file
 The ActiveMq server will be started and will be running.
 Enter the address in the browser :- http://localhost:8161/admin
 Enter the user name and password as admin , admin
DeadLetter queue configuration:
To configure DeadLetter Queue in activeMQ:-
 Go to the folder <apache-activemq-5.8.0conf>
 Open the file activemq.xml in an editor.
 Modify the following in the file :-
 Set the following code in the redeliveryPolicyMap:-
<redeliveryPolicyEntries>
<redeliveryPolicy queue=">" maximumRedeliveries="1"
redeliveryDelay="1200000" initialRedeliveryDelay="5000"
useCollisionAvoidance="true" />
</redeliveryPolicyEntries>
 Enter the following tags:-
<broker xmlns="http://activemq.apache.org/schema/core"
brokerName="localhost " dataDirectory="${activemq.data}" persistent="true">
 Here maximumRedeliveries is the number of redeliveries of the messages,
redeliveryDelay is the interval of messages to be delivered and
initialRedeliveryDelay is the interval which the messages will be triggered for the
first time.
 Here brokerName needs to be mentioned.
 The above script will set the redeliveryPolicies.
 Note:-The queue will not be created until messages are pushed in ActiveMQ.
 Open Mule and run the consumer program to consume the messages from
ActiveMQ.
 Once the data is pushed from SAP the ActiveMQ will create the queue and stores
the messages.
 Now whenever the consumer throws an exception, The messages will retry to a
certain time based on redelivery policy of ActiveMQ and a deadletter queue will
be created and failed messages will be pushed to the deadletter queue.
Configuring ActiveMQ in clusters:
Clustering is needed so that if 1 node(master) goes down then the other
nodes(slaves) can take the work from it and the data should always be available.
Steps to Install and configure ActiveMQ in clusters:-
 Let there be 2 nodes which we want to configure in cluster.
 Repeat the installing and configuring of ActiveMQ on both systems which would
be in clusters.
 Need to install Microsoft SQL Server on one of the systems that are in clusters.
 Now open the activemq.xml file of ActiveMQ from <apache-activemq-5.8.0conf>
folder.
 Change the broker name.Note:- The broker name should be different for both the
nodes:-
<broker xmlns="http://activemq.apache.org/schema/core" brokerName="Node1 "
dataDirectory="${activemq.data}" persistent="true">
 Enter the following tag below to bean class tag in the file:-
 Add the following tags inside persistenceAdapter tag:-
<bean id="sql-ds"
class="org.apache.commons.dbcp.BasicDataSource" destroy-
method="close">
<property
name="driverClassName"
value="com.microsoft.sqlserver.jdbc.SQLServerDriver"/>
<property name="url"
value="jdbc:sqlserver://=%ipaddress%SQLEXPRESS:1433;databaseNa
me=SOA_VMES"/>
<property name="username"
value="username"/>
<property name="password"
value="samplepassword"/>
<property name="maxActive"
value="200"/>
<property
name="poolPreparedStatements" value="true"/>
</bean>
<jdbcPersistenceAdapter dataDirectory="${activemq.base}/activemq-data"
dataSource="#sql-ds" useDatabaseLock="true" lockKeepAlivePeriod="5000"/>
 Remove the kahaDB tag from persistenceAdapter tag.
 Copy the sqljdbc4.jar file in activemq lib folder if it is not there.
 Give different web app port numbers in different nodes.(For ex :node1->8161 &
node->8162)
 Change port number in transportConnector tag in activemq.xml file in node2.
 (for ex node1 give 61616 & for node2 give 62626).
 Note: - useDatabaseLock="true" should always be true
 Here driverClassName is the name of the database driver.
 url is the url of the SQL server with the database name.
 username and password are the username and password for the database
 dataSource is the the name of the data source we are configuring in the database
configuration.
 Now go to the next clustered node and open the activemq.xml file of ActiveMQ
from <apache-activemq-5.8.0conf> folder
 Repeat the same configuration and both the ActiveMQ are in clustered
 Note here in this node the broker name need to be changed
 Rest everything in the configuration file of the second node will be same as it is.
 Note there should be a database named SOA_VMES in the SQL server which the
ActiveMQ will use for clustering.
 The database should be one which will be using by both the clusters. The database
should be installed in any one of the node.
<broker xmlns="http://activemq.apache.org/schema/core"
brokerName="Node2 " dataDirectory="${activemq.data}"
persistent="true">
Running ActiveMQ in clusters:
 Go to node1 which is the first node in the cluster. This node will act as master.
 Go to the folder <apache-activemq-5.8.0bins> and start the activemq.bat file
 The ActiveMQ node1 server will be started and will act as a Master node
 Enter the address in the browser :- http://localhost:8161/admin
 Enter the user name and password as admin , admin
 Click the Queue in the portal to view the queue messages in the ActiveMQ
 Currently there will be no messages and following screen will appear
 Goto node2 and repeat the same process to start activeMQ server
 Now both the nodes are running in clusters.
 Node2 will start but since Node2 is a slave it will not be activated and wait for the
control of the database due to database lock. Check the screenshots below:-
Node2 ActiveMQ server is waiting for the database lock to be release. If we open
the browser in node2 and enter http://localhost:8162/admin, it will not display
anything since it is not activated.
 For Testing purpose, push the messages to Master (Node1) server using some Java
code or Mule ESB flows.
 Stop the master instance.
 Slave instance will pick the lock from database immediately and gets the messages
from Node1
 Open the browser http://localhost:8162/admin.
 You can able to see messages that has been received from Master node.
THANKS YOU
By Ramakrishna Narkedamilli

More Related Content

What's hot

An overview of selenium webdriver
An overview of selenium webdriverAn overview of selenium webdriver
An overview of selenium webdriver
Anuraj S.L
 
spring-api-rest.pdf
spring-api-rest.pdfspring-api-rest.pdf
spring-api-rest.pdf
Jaouad Assabbour
 
MySQLi
MySQLiMySQLi
Building a Dynamic Website Using Django
Building a Dynamic Website Using DjangoBuilding a Dynamic Website Using Django
Building a Dynamic Website Using Django
Nathan Eror
 
Presentation on Apache Jmeter
Presentation on Apache JmeterPresentation on Apache Jmeter
Presentation on Apache Jmeter
Sabitri Gaire
 
ASP.NET MVC 3.0 Validation
ASP.NET MVC 3.0 ValidationASP.NET MVC 3.0 Validation
ASP.NET MVC 3.0 Validation
Eyal Vardi
 
Data annotation validation (ASP.net)
Data annotation validation (ASP.net)Data annotation validation (ASP.net)
Data annotation validation (ASP.net)
Jyotasana Bharti
 
UDA-Desarrollo RUP. Consejos y buenas prácticas
UDA-Desarrollo RUP. Consejos y buenas prácticasUDA-Desarrollo RUP. Consejos y buenas prácticas
UDA-Desarrollo RUP. Consejos y buenas prácticas
Ander Martinez
 
카카오i 오픈빌더로 피자챗봇 만들기
카카오i 오픈빌더로 피자챗봇 만들기카카오i 오픈빌더로 피자챗봇 만들기
카카오i 오픈빌더로 피자챗봇 만들기
deepseaswjh
 
Presentation SOAP
 Presentation SOAP Presentation SOAP
Presentation SOAP
litayem bechir
 
Netbeans IDE & Platform
Netbeans IDE & PlatformNetbeans IDE & Platform
Netbeans IDE & Platform
Aatul Palandurkar
 
Hibernate Presentation
Hibernate  PresentationHibernate  Presentation
Hibernate Presentationguest11106b
 
JUnit & Mockito, first steps
JUnit & Mockito, first stepsJUnit & Mockito, first steps
JUnit & Mockito, first steps
Renato Primavera
 
Hybrid framework for test automation
Hybrid framework for test automationHybrid framework for test automation
Hybrid framework for test automationsrivinayak
 
UI Testing Automation
UI Testing AutomationUI Testing Automation
UI Testing AutomationAgileEngine
 
Criando uma arquitetura para seus testes de API com RestAssured
Criando uma arquitetura para seus testes de API com RestAssuredCriando uma arquitetura para seus testes de API com RestAssured
Criando uma arquitetura para seus testes de API com RestAssured
Elias Nogueira
 
Performance consulting
Performance consultingPerformance consulting
Performance consulting
IMQA
 
Controls
ControlsControls
Controls
teach4uin
 
Introduction to Spring Boot!
Introduction to Spring Boot!Introduction to Spring Boot!
Introduction to Spring Boot!Jakub Kubrynski
 

What's hot (20)

An overview of selenium webdriver
An overview of selenium webdriverAn overview of selenium webdriver
An overview of selenium webdriver
 
spring-api-rest.pdf
spring-api-rest.pdfspring-api-rest.pdf
spring-api-rest.pdf
 
MySQLi
MySQLiMySQLi
MySQLi
 
Building a Dynamic Website Using Django
Building a Dynamic Website Using DjangoBuilding a Dynamic Website Using Django
Building a Dynamic Website Using Django
 
Presentation on Apache Jmeter
Presentation on Apache JmeterPresentation on Apache Jmeter
Presentation on Apache Jmeter
 
ASP.NET MVC 3.0 Validation
ASP.NET MVC 3.0 ValidationASP.NET MVC 3.0 Validation
ASP.NET MVC 3.0 Validation
 
Data annotation validation (ASP.net)
Data annotation validation (ASP.net)Data annotation validation (ASP.net)
Data annotation validation (ASP.net)
 
UDA-Desarrollo RUP. Consejos y buenas prácticas
UDA-Desarrollo RUP. Consejos y buenas prácticasUDA-Desarrollo RUP. Consejos y buenas prácticas
UDA-Desarrollo RUP. Consejos y buenas prácticas
 
Servlets
ServletsServlets
Servlets
 
카카오i 오픈빌더로 피자챗봇 만들기
카카오i 오픈빌더로 피자챗봇 만들기카카오i 오픈빌더로 피자챗봇 만들기
카카오i 오픈빌더로 피자챗봇 만들기
 
Presentation SOAP
 Presentation SOAP Presentation SOAP
Presentation SOAP
 
Netbeans IDE & Platform
Netbeans IDE & PlatformNetbeans IDE & Platform
Netbeans IDE & Platform
 
Hibernate Presentation
Hibernate  PresentationHibernate  Presentation
Hibernate Presentation
 
JUnit & Mockito, first steps
JUnit & Mockito, first stepsJUnit & Mockito, first steps
JUnit & Mockito, first steps
 
Hybrid framework for test automation
Hybrid framework for test automationHybrid framework for test automation
Hybrid framework for test automation
 
UI Testing Automation
UI Testing AutomationUI Testing Automation
UI Testing Automation
 
Criando uma arquitetura para seus testes de API com RestAssured
Criando uma arquitetura para seus testes de API com RestAssuredCriando uma arquitetura para seus testes de API com RestAssured
Criando uma arquitetura para seus testes de API com RestAssured
 
Performance consulting
Performance consultingPerformance consulting
Performance consulting
 
Controls
ControlsControls
Controls
 
Introduction to Spring Boot!
Introduction to Spring Boot!Introduction to Spring Boot!
Introduction to Spring Boot!
 

Viewers also liked

Advanced messaging with Apache ActiveMQ
Advanced messaging with Apache ActiveMQAdvanced messaging with Apache ActiveMQ
Advanced messaging with Apache ActiveMQ
dejanb
 
Messaging for Web and Mobile with Apache ActiveMQ
Messaging for Web and Mobile with Apache ActiveMQMessaging for Web and Mobile with Apache ActiveMQ
Messaging for Web and Mobile with Apache ActiveMQdejanb
 
ActiveMQ In Action
ActiveMQ In ActionActiveMQ In Action
ActiveMQ In ActionBruce Snyder
 
ActiveMQ 5.9.x new features
ActiveMQ 5.9.x new featuresActiveMQ 5.9.x new features
ActiveMQ 5.9.x new features
Christian Posta
 
Messaging With ActiveMQ
Messaging With ActiveMQMessaging With ActiveMQ
Messaging With ActiveMQ
Bruce Snyder
 
IoT with Apache ActiveMQ, Camel & Spark
IoT with Apache ActiveMQ, Camel & SparkIoT with Apache ActiveMQ, Camel & Spark
IoT with Apache ActiveMQ, Camel & Spark
Red Hat Developers
 
Enterprise mobility
Enterprise mobilityEnterprise mobility
Enterprise mobility
abhijitmadhwaraj
 
Enterprise Integration Patterns with ActiveMQ
Enterprise Integration Patterns with ActiveMQEnterprise Integration Patterns with ActiveMQ
Enterprise Integration Patterns with ActiveMQRob Davies
 
A Practical Guide for Selecting an Enterprise Messaging Platforms
A Practical Guide for Selecting an Enterprise Messaging PlatformsA Practical Guide for Selecting an Enterprise Messaging Platforms
A Practical Guide for Selecting an Enterprise Messaging Platforms
Jesus Rodriguez
 
Active MQ
Active MQActive MQ
Active MQ
Kris Jeong
 
Messaging With Apache ActiveMQ
Messaging With Apache ActiveMQMessaging With Apache ActiveMQ
Messaging With Apache ActiveMQBruce Snyder
 
Connecting Applications Everywhere with ActiveMQ
Connecting Applications Everywhere with ActiveMQConnecting Applications Everywhere with ActiveMQ
Connecting Applications Everywhere with ActiveMQ
Rob Davies
 
Websphere MQ (MQSeries) fundamentals
Websphere MQ (MQSeries) fundamentalsWebsphere MQ (MQSeries) fundamentals
Websphere MQ (MQSeries) fundamentals
Biju Nair
 
Queue Management
Queue ManagementQueue Management
Queue Management
Omid Rad
 
JMS Providers Overview
JMS Providers OverviewJMS Providers Overview
JMS Providers OverviewVadym Lotar
 

Viewers also liked (15)

Advanced messaging with Apache ActiveMQ
Advanced messaging with Apache ActiveMQAdvanced messaging with Apache ActiveMQ
Advanced messaging with Apache ActiveMQ
 
Messaging for Web and Mobile with Apache ActiveMQ
Messaging for Web and Mobile with Apache ActiveMQMessaging for Web and Mobile with Apache ActiveMQ
Messaging for Web and Mobile with Apache ActiveMQ
 
ActiveMQ In Action
ActiveMQ In ActionActiveMQ In Action
ActiveMQ In Action
 
ActiveMQ 5.9.x new features
ActiveMQ 5.9.x new featuresActiveMQ 5.9.x new features
ActiveMQ 5.9.x new features
 
Messaging With ActiveMQ
Messaging With ActiveMQMessaging With ActiveMQ
Messaging With ActiveMQ
 
IoT with Apache ActiveMQ, Camel & Spark
IoT with Apache ActiveMQ, Camel & SparkIoT with Apache ActiveMQ, Camel & Spark
IoT with Apache ActiveMQ, Camel & Spark
 
Enterprise mobility
Enterprise mobilityEnterprise mobility
Enterprise mobility
 
Enterprise Integration Patterns with ActiveMQ
Enterprise Integration Patterns with ActiveMQEnterprise Integration Patterns with ActiveMQ
Enterprise Integration Patterns with ActiveMQ
 
A Practical Guide for Selecting an Enterprise Messaging Platforms
A Practical Guide for Selecting an Enterprise Messaging PlatformsA Practical Guide for Selecting an Enterprise Messaging Platforms
A Practical Guide for Selecting an Enterprise Messaging Platforms
 
Active MQ
Active MQActive MQ
Active MQ
 
Messaging With Apache ActiveMQ
Messaging With Apache ActiveMQMessaging With Apache ActiveMQ
Messaging With Apache ActiveMQ
 
Connecting Applications Everywhere with ActiveMQ
Connecting Applications Everywhere with ActiveMQConnecting Applications Everywhere with ActiveMQ
Connecting Applications Everywhere with ActiveMQ
 
Websphere MQ (MQSeries) fundamentals
Websphere MQ (MQSeries) fundamentalsWebsphere MQ (MQSeries) fundamentals
Websphere MQ (MQSeries) fundamentals
 
Queue Management
Queue ManagementQueue Management
Queue Management
 
JMS Providers Overview
JMS Providers OverviewJMS Providers Overview
JMS Providers Overview
 

Similar to Active mq Installation and Master Slave setup

Activemq installation and master slave setup using shared broker data
Activemq installation and master slave setup using shared broker dataActivemq installation and master slave setup using shared broker data
Activemq installation and master slave setup using shared broker data
Ramakrishna Narkedamilli
 
Ch10.애플리케이션 서버의 병목_발견_방법
Ch10.애플리케이션 서버의 병목_발견_방법Ch10.애플리케이션 서버의 병목_발견_방법
Ch10.애플리케이션 서버의 병목_발견_방법
Minchul Jung
 
Tomcat 6: Evolving our server
Tomcat 6: Evolving our serverTomcat 6: Evolving our server
Tomcat 6: Evolving our server
Jorge S Cruz Lambert
 
Salt Cloud vmware-orchestration
Salt Cloud vmware-orchestrationSalt Cloud vmware-orchestration
Salt Cloud vmware-orchestration
Mo Rawi
 
Mater,slave on mysql
Mater,slave on mysqlMater,slave on mysql
Mater,slave on mysqlVasudeva Rao
 
MySQL InnoDB Cluster - New Features in 8.0 Releases - Best Practices
MySQL InnoDB Cluster - New Features in 8.0 Releases - Best PracticesMySQL InnoDB Cluster - New Features in 8.0 Releases - Best Practices
MySQL InnoDB Cluster - New Features in 8.0 Releases - Best Practices
Kenny Gryp
 
ActiveMQ Configuration
ActiveMQ ConfigurationActiveMQ Configuration
ActiveMQ ConfigurationAshish Mishra
 
DB proxy server test: run tests on tens of virtual machines with Jenkins, Vag...
DB proxy server test: run tests on tens of virtual machines with Jenkins, Vag...DB proxy server test: run tests on tens of virtual machines with Jenkins, Vag...
DB proxy server test: run tests on tens of virtual machines with Jenkins, Vag...
Timofey Turenko
 
Monitoring Agile PLM with JConsole
Monitoring Agile PLM with JConsole Monitoring Agile PLM with JConsole
Monitoring Agile PLM with JConsole
PLM Mechanic .
 
Bpug mcollective 20140624
Bpug mcollective 20140624Bpug mcollective 20140624
Bpug mcollective 20140624
Johan De Wit
 
Jsp and jstl
Jsp and jstlJsp and jstl
Jsp and jstl
vishal choudhary
 
Saltcheck: a tool in the salt toolbox
Saltcheck: a tool in the salt toolboxSaltcheck: a tool in the salt toolbox
Saltcheck: a tool in the salt toolbox
Christian McHugh
 
Tomcat tutorail
Tomcat tutorailTomcat tutorail
Tomcat tutorail
Supratim Ray
 
Lampstack (1)
Lampstack (1)Lampstack (1)
Lampstack (1)
ShivamKumar773
 
Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013
Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013
Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013
Carlos Sanchez
 
Codemotion Rome 2018 Docker Swarm Mode
Codemotion Rome 2018 Docker Swarm ModeCodemotion Rome 2018 Docker Swarm Mode
Codemotion Rome 2018 Docker Swarm Mode
Simone Soldateschi
 
Architecting cloud
Architecting cloudArchitecting cloud
Architecting cloud
Tahsin Hasan
 
Drupal, varnish, esi - Toulouse November 2
Drupal, varnish, esi - Toulouse November 2Drupal, varnish, esi - Toulouse November 2
Drupal, varnish, esi - Toulouse November 2
Marcus Deglos
 

Similar to Active mq Installation and Master Slave setup (20)

Activemq installation and master slave setup using shared broker data
Activemq installation and master slave setup using shared broker dataActivemq installation and master slave setup using shared broker data
Activemq installation and master slave setup using shared broker data
 
Mysql ppt
Mysql pptMysql ppt
Mysql ppt
 
Ch10.애플리케이션 서버의 병목_발견_방법
Ch10.애플리케이션 서버의 병목_발견_방법Ch10.애플리케이션 서버의 병목_발견_방법
Ch10.애플리케이션 서버의 병목_발견_방법
 
Tomcat 6: Evolving our server
Tomcat 6: Evolving our serverTomcat 6: Evolving our server
Tomcat 6: Evolving our server
 
Salt Cloud vmware-orchestration
Salt Cloud vmware-orchestrationSalt Cloud vmware-orchestration
Salt Cloud vmware-orchestration
 
Mater,slave on mysql
Mater,slave on mysqlMater,slave on mysql
Mater,slave on mysql
 
MySQL InnoDB Cluster - New Features in 8.0 Releases - Best Practices
MySQL InnoDB Cluster - New Features in 8.0 Releases - Best PracticesMySQL InnoDB Cluster - New Features in 8.0 Releases - Best Practices
MySQL InnoDB Cluster - New Features in 8.0 Releases - Best Practices
 
ActiveMQ Configuration
ActiveMQ ConfigurationActiveMQ Configuration
ActiveMQ Configuration
 
DB proxy server test: run tests on tens of virtual machines with Jenkins, Vag...
DB proxy server test: run tests on tens of virtual machines with Jenkins, Vag...DB proxy server test: run tests on tens of virtual machines with Jenkins, Vag...
DB proxy server test: run tests on tens of virtual machines with Jenkins, Vag...
 
java
javajava
java
 
Monitoring Agile PLM with JConsole
Monitoring Agile PLM with JConsole Monitoring Agile PLM with JConsole
Monitoring Agile PLM with JConsole
 
Bpug mcollective 20140624
Bpug mcollective 20140624Bpug mcollective 20140624
Bpug mcollective 20140624
 
Jsp and jstl
Jsp and jstlJsp and jstl
Jsp and jstl
 
Saltcheck: a tool in the salt toolbox
Saltcheck: a tool in the salt toolboxSaltcheck: a tool in the salt toolbox
Saltcheck: a tool in the salt toolbox
 
Tomcat tutorail
Tomcat tutorailTomcat tutorail
Tomcat tutorail
 
Lampstack (1)
Lampstack (1)Lampstack (1)
Lampstack (1)
 
Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013
Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013
Continuous Delivery with Maven, Puppet and Tomcat - ApacheCon NA 2013
 
Codemotion Rome 2018 Docker Swarm Mode
Codemotion Rome 2018 Docker Swarm ModeCodemotion Rome 2018 Docker Swarm Mode
Codemotion Rome 2018 Docker Swarm Mode
 
Architecting cloud
Architecting cloudArchitecting cloud
Architecting cloud
 
Drupal, varnish, esi - Toulouse November 2
Drupal, varnish, esi - Toulouse November 2Drupal, varnish, esi - Toulouse November 2
Drupal, varnish, esi - Toulouse November 2
 

More from Ramakrishna Narkedamilli

Enabling Security For ActiveMQ JMX Access
Enabling Security For ActiveMQ JMX AccessEnabling Security For ActiveMQ JMX Access
Enabling Security For ActiveMQ JMX Access
Ramakrishna Narkedamilli
 
Mule Requester Usage Demo
Mule Requester Usage DemoMule Requester Usage Demo
Mule Requester Usage Demo
Ramakrishna Narkedamilli
 
Mule Integration with Dropbox
Mule Integration with DropboxMule Integration with Dropbox
Mule Integration with Dropbox
Ramakrishna Narkedamilli
 
Mule ESB integration with Stripe
Mule ESB integration with StripeMule ESB integration with Stripe
Mule ESB integration with Stripe
Ramakrishna Narkedamilli
 
Mule integration with Servicenow
Mule integration with ServicenowMule integration with Servicenow
Mule integration with Servicenow
Ramakrishna Narkedamilli
 
Custom connector development using mule DevKit
Custom connector development using mule DevKitCustom connector development using mule DevKit
Custom connector development using mule DevKit
Ramakrishna Narkedamilli
 
Mule Integration with Atlassian JIRA
Mule Integration with Atlassian JIRAMule Integration with Atlassian JIRA
Mule Integration with Atlassian JIRA
Ramakrishna Narkedamilli
 
MMC control for failing flows consistently
MMC control for failing flows consistentlyMMC control for failing flows consistently
MMC control for failing flows consistently
Ramakrishna Narkedamilli
 
Salesforce Integration Using javacode
Salesforce Integration Using javacodeSalesforce Integration Using javacode
Salesforce Integration Using javacode
Ramakrishna Narkedamilli
 

More from Ramakrishna Narkedamilli (9)

Enabling Security For ActiveMQ JMX Access
Enabling Security For ActiveMQ JMX AccessEnabling Security For ActiveMQ JMX Access
Enabling Security For ActiveMQ JMX Access
 
Mule Requester Usage Demo
Mule Requester Usage DemoMule Requester Usage Demo
Mule Requester Usage Demo
 
Mule Integration with Dropbox
Mule Integration with DropboxMule Integration with Dropbox
Mule Integration with Dropbox
 
Mule ESB integration with Stripe
Mule ESB integration with StripeMule ESB integration with Stripe
Mule ESB integration with Stripe
 
Mule integration with Servicenow
Mule integration with ServicenowMule integration with Servicenow
Mule integration with Servicenow
 
Custom connector development using mule DevKit
Custom connector development using mule DevKitCustom connector development using mule DevKit
Custom connector development using mule DevKit
 
Mule Integration with Atlassian JIRA
Mule Integration with Atlassian JIRAMule Integration with Atlassian JIRA
Mule Integration with Atlassian JIRA
 
MMC control for failing flows consistently
MMC control for failing flows consistentlyMMC control for failing flows consistently
MMC control for failing flows consistently
 
Salesforce Integration Using javacode
Salesforce Integration Using javacodeSalesforce Integration Using javacode
Salesforce Integration Using javacode
 

Recently uploaded

Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
Abida Shariff
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
CatarinaPereira64715
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 

Recently uploaded (20)

Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 

Active mq Installation and Master Slave setup

  • 2. Overview: Apache ActiveMQ is the most popular and powerful open source messaging and Integration Patterns server. Apache ActiveMQ is fast, supports many Cross Language Clients. Using this we can enable to message throttling, redelivery, delay of messages. In this Presentation will going to see  ActiveMQ Installation and configurations  DeadLetter queue configuration  Configuring ActiveMQ in clusters  Running ActiveMQ in clusters
  • 3. ActiveMQ Installation and configurations: Prerequisites  ActiveMQ installer -- apache-activemq-5.8.0-bin.zip  Database:- Microsoft SQL Server Limitations: The configuration is done in activemq.xml and the configuration tags used in the code works with apache-activemq version 5.8.0.It might change according to latest versions.
  • 4. Steps to Install  Extract apache-activemq-5.8.0-bin.zip to a folder eg:- Applications where it will be running  It will create the folder apache-activemq-5.8.0 in the Applications folder  Go to the folder <apache-activemq-5.8.0bins> and start the activemq.bat file  The ActiveMq server will be started and will be running.  Enter the address in the browser :- http://localhost:8161/admin  Enter the user name and password as admin , admin
  • 5. DeadLetter queue configuration: To configure DeadLetter Queue in activeMQ:-  Go to the folder <apache-activemq-5.8.0conf>  Open the file activemq.xml in an editor.  Modify the following in the file :-  Set the following code in the redeliveryPolicyMap:- <redeliveryPolicyEntries> <redeliveryPolicy queue=">" maximumRedeliveries="1" redeliveryDelay="1200000" initialRedeliveryDelay="5000" useCollisionAvoidance="true" /> </redeliveryPolicyEntries>  Enter the following tags:- <broker xmlns="http://activemq.apache.org/schema/core" brokerName="localhost " dataDirectory="${activemq.data}" persistent="true">
  • 6.  Here maximumRedeliveries is the number of redeliveries of the messages, redeliveryDelay is the interval of messages to be delivered and initialRedeliveryDelay is the interval which the messages will be triggered for the first time.  Here brokerName needs to be mentioned.  The above script will set the redeliveryPolicies.  Note:-The queue will not be created until messages are pushed in ActiveMQ.  Open Mule and run the consumer program to consume the messages from ActiveMQ.  Once the data is pushed from SAP the ActiveMQ will create the queue and stores the messages.
  • 7.  Now whenever the consumer throws an exception, The messages will retry to a certain time based on redelivery policy of ActiveMQ and a deadletter queue will be created and failed messages will be pushed to the deadletter queue.
  • 8. Configuring ActiveMQ in clusters: Clustering is needed so that if 1 node(master) goes down then the other nodes(slaves) can take the work from it and the data should always be available. Steps to Install and configure ActiveMQ in clusters:-  Let there be 2 nodes which we want to configure in cluster.  Repeat the installing and configuring of ActiveMQ on both systems which would be in clusters.  Need to install Microsoft SQL Server on one of the systems that are in clusters.  Now open the activemq.xml file of ActiveMQ from <apache-activemq-5.8.0conf> folder.  Change the broker name.Note:- The broker name should be different for both the nodes:- <broker xmlns="http://activemq.apache.org/schema/core" brokerName="Node1 " dataDirectory="${activemq.data}" persistent="true">
  • 9.  Enter the following tag below to bean class tag in the file:-  Add the following tags inside persistenceAdapter tag:- <bean id="sql-ds" class="org.apache.commons.dbcp.BasicDataSource" destroy- method="close"> <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver"/> <property name="url" value="jdbc:sqlserver://=%ipaddress%SQLEXPRESS:1433;databaseNa me=SOA_VMES"/> <property name="username" value="username"/> <property name="password" value="samplepassword"/> <property name="maxActive" value="200"/> <property name="poolPreparedStatements" value="true"/> </bean> <jdbcPersistenceAdapter dataDirectory="${activemq.base}/activemq-data" dataSource="#sql-ds" useDatabaseLock="true" lockKeepAlivePeriod="5000"/>
  • 10.  Remove the kahaDB tag from persistenceAdapter tag.  Copy the sqljdbc4.jar file in activemq lib folder if it is not there.  Give different web app port numbers in different nodes.(For ex :node1->8161 & node->8162)  Change port number in transportConnector tag in activemq.xml file in node2.  (for ex node1 give 61616 & for node2 give 62626).  Note: - useDatabaseLock="true" should always be true  Here driverClassName is the name of the database driver.  url is the url of the SQL server with the database name.  username and password are the username and password for the database  dataSource is the the name of the data source we are configuring in the database configuration.  Now go to the next clustered node and open the activemq.xml file of ActiveMQ from <apache-activemq-5.8.0conf> folder  Repeat the same configuration and both the ActiveMQ are in clustered
  • 11.  Note here in this node the broker name need to be changed  Rest everything in the configuration file of the second node will be same as it is.  Note there should be a database named SOA_VMES in the SQL server which the ActiveMQ will use for clustering.  The database should be one which will be using by both the clusters. The database should be installed in any one of the node. <broker xmlns="http://activemq.apache.org/schema/core" brokerName="Node2 " dataDirectory="${activemq.data}" persistent="true">
  • 12. Running ActiveMQ in clusters:  Go to node1 which is the first node in the cluster. This node will act as master.  Go to the folder <apache-activemq-5.8.0bins> and start the activemq.bat file  The ActiveMQ node1 server will be started and will act as a Master node
  • 13.  Enter the address in the browser :- http://localhost:8161/admin  Enter the user name and password as admin , admin  Click the Queue in the portal to view the queue messages in the ActiveMQ  Currently there will be no messages and following screen will appear
  • 14.  Goto node2 and repeat the same process to start activeMQ server  Now both the nodes are running in clusters.  Node2 will start but since Node2 is a slave it will not be activated and wait for the control of the database due to database lock. Check the screenshots below:- Node2 ActiveMQ server is waiting for the database lock to be release. If we open the browser in node2 and enter http://localhost:8162/admin, it will not display anything since it is not activated.
  • 15.  For Testing purpose, push the messages to Master (Node1) server using some Java code or Mule ESB flows.  Stop the master instance.  Slave instance will pick the lock from database immediately and gets the messages from Node1  Open the browser http://localhost:8162/admin.  You can able to see messages that has been received from Master node.