SlideShare uma empresa Scribd logo
1 de 33
What is an Apache-Service Mix ?
Apache ServiceMix is an enterprise-class open-source
distributed enterprise service bus (ESB) and serviceoriented architecture (SOA) toolkit. It was built from the
ground up on the semantics and APIs of the Java
Business Integration (JBI) specification JSR 208 and
released under the Apache License. ServiceMix 4 also
fully supports OSGi. ServiceMix is lightweight and easily
embeddable, has integrated Spring support and can be
run at the edge of the network (inside a client or server), as
a standalone ESB provider or as a service within another
ESB. You can use ServiceMix in Java SE or a Java EE
application server. ServiceMix uses ActiveMQ to provide
remoting, clustering, reliability and distributed failover.
What is an ESB ?

"An Enterprise Service Bus (ESB) is a new architecture
that, exploits Web services, Messaging middleware,
intelligent routing, and transformation. ESBs act as a
lightweight, ubiquitous integration backbone through
which software services and application components
flow.”
What is an ESB ??

An ESB acts as a shared messaging layer for connecting
applications and other services throughout an enterprise
computing infrastructure. It supplements its core
asynchronous messaging backbone with intelligent
transformation and routing to ensure messages are
passed reliably. Services participate in the ESB using
either web services messaging standards or JMS
ESB Architecture
Apache ServiceMix - Architecture
§ServiceMix employs a layered architecture based on OSGi
• The core : A lightweight runtime named “Karaf”, which extends
OSGi with powerful features for handling and managing OSGI
bundles
• The technology layer : A layer of component technologies that sits
on top of the core to support your applications
Apache ServiceMix–Core Layer Features
•Hot deployment support for OSGi bundles
• Dynamic configuration of services through the OSGi “ConfigurationAdmin”
service
• Dynamic logging back-end provided by Log4J supports different
APIs (SLF4J, Java Utils, JCL, Avalon, Tomcat, OSGi)
• Application provisioning through file-drop, Maven repository and
remote download (http://)
• Administration via an extensible shell console
• Secure remote access via ssh

• Security framework based on JAAS
Apache ServiceMix – Technology Layer Features
oSpring Framework
• ServiceMix loads an OSGi bundle into its runtime, or generates an
OSGi bundle on the fly, and then instantiates the Spring application
context
o JMS Message Broker
• ServiceMix deploys the Apache ActiveMQ broker (OSGi-ready)
o JAX-WS/JAX-RS Web Services support
•
ServiceMix deploys the Apache CXF runtime (OSGi-ready)
o Enterprise Integration Patterns (EIP) support
• ServiceMix deploys the Apache Camel runtime (OSGi-ready)
o Java Business Integration (JBI) support
• ServiceMix provides a JBI 1.0 container, to support legacy code
• implemented as service units / service assemblies and deployed using
ServiceMix 3.x
oCan be extended to support technologies such as SCA or EJB3
Apache ServiceMix – Deployment Model
oWhen you deploy a ServiceMix solution, you typically
deploy the core (Karaf) plus one or more technology
Components
oExamples:
• To support EIPs : Karaf runtime + Camel feature
• To support JAX-WS/JAX-RS solutions : Karaf runtime + CXF feature
• To support JMS solutions : Karaf runtime + ActiveMQ feature
• To support JBI-based solutions : Karaf runtime + JBI feature
JBI (Java Business Integration)
JBI defines an architecture that allows the construction
of integration systems from plug-in components, that
interoperate through the method of mediated message
exchange.
JBI
2 kinds of components
● Service Engine (SE)
Allow implementing business logic or services on the ESB
e.g. servicemix-drools or servicemix-bean
● Binding Components Provide connectivity to external services
(transport, normalization, ...)
e.g. servicemix-ftp or servicemix-http
Message Routing
Overview of apache servicemix
Apache ServiceMix – Integration container
Apache Camel – Integration Routes

Apache ActiveMQ - Messaging
Apache Karaf – OSGI Management
Apache Felix - OSGI

Apache Aries – OSGI enterprise
Installation
System requirements
• Java Developer Kit (JDK) 1.6.x (Java 6), for both deployment and
compiling. (Note: Java 7 is currently not supported)
• About 100 MB of free disk space
Downloading Apache ServiceMix
• Apache ServiceMix 4.4.2 is available under the Apache License v2 and
can be downloaded from http://servicemix.apache.org/downloads.html.
Depending on your operation system, you should download either the
tar.gz or the zip file:
• tar.gz for Linux/Unix/MacOS X
• zip for Windows
Installation
On Linux/Unix/MacOS X
On a command shell, navigate to the directory where you extracted ServiceMix
and the bin/servicemix shell script
Example: if ServiceMix is installed in the ~/Applications/apache-servicemix4.4.2 directory.
$ cd ~/Applications/apache-servicemix-4.4.2
$ ./bin/servicemix
!/quickstart/images/start-linux.png
|width=75%|height=75%!
Apache ServiceMix 4.4.2
Apache ServiceMix console
Working with bundles
• When ServiceMix is first started, a whole set of bundles providing the core features
for the product are being installed. Let's use the command console to find out more
about them...
• The osgi:list command can be used to get a list of all bundles currently installed.
Enter this
karaf@root> osgi:list
For every bundle, you see:
• the bundle id
• the bundle state
• if the bundle contains a Blueprint or Spring XML file, the next 2 columns will show you
if the
beans defined there were created successfully
• the bundle start level
• the bundle name and version
Apache ServiceMix console
KARAF – It is a command line tool used to install/uninstall parts of a SMX application
and also to troubleshoot problems
Apache ServiceMix console
Grep command in karaf
karaf@root> osgi:list | grep camel
Apache ServiceMix console
Working with logging
• To look at the message in the log file
- karaf@root> log:display

• If you're only interested in the latest exception in the log file
- karaf@root> log:display-exception
• You can also change the log level at runtime by using the log:set
command. You can try these commands on your instance now by first
setting the log level to DEBUG and then using grep to make sure that you
can actually see the extra logging.
- karaf@root> log:set DEBUG
- karaf@root> log:display | grep DEBUG
Checking Logs file

karaf@root>log:display-exception it display the current exception
Checking Logs file

karaf@root>log:set DEBUG to set the logs in DEBUG Mode
karaf@root>log:display
karaf@root>log:set INFO to set the logs in INFO Mode
karaf@root>log:display
Other Optional features:
The list of features is available with the features:list command, we are taking
some of few regular basis command.This command shows the status weather it
is installed or not, and other tab shows version and Name.
and grep to find the things in the list that you're interested in.
karaf@root> features:list
karaf@root> features:list | grep camel
Web console:To get the web console installed in ServiceMix, install the feature
from your console
karaf@root> features:install webconsole
karaf@root> features:list | grep webconsole
your browser to http://localhost:8181/system/console and login with user smx
and password smx to access the web console
Servicemix-camel : The servicemix-camel component provides support for
using Apache Camel to provide a full set of Enterprise Integration Patterns and
flexible routing and transformation in both Java code or Spring XML to route
services on the Normalized Message Router
Camel –Route and Active MQ Deployment : The way to deploy the Camel
route Blueprint and Active MQ XML files both having same procedure.
1)Create a new file having the Below configration in the Deployment directory.
2)When the file deployed sucessfully it creates two folder in the home directory
(as per specified in Blueprint.XML file)
3)One is HOME/ input and Home/output dir
4)Now copy a file in the input Dir
5)It automatically copied to output Dir
For ActiveMQ it create a new dir under HOME is ActiveMQ and under this we
have two sub directory Input and Output
Let see in our new slide…
Servicemix-camel : Overview Diagram
Camel Route:1) Define the route in a Blueprint XML file in deployment
folder having the below configrations.
2) Just create a new XML file in the deploy folder with the code below to
start a route to copy files from one directory to another.
Check in Logs by log:display we got the below massage for the file sucessfully
moved
To Stop and Starts the Route below are the commands:
karaf@root> osgi:stop 200

karaf@root> osgi:start 200
To Stop and Starts the Route below are the commands:
karaf@root> osgi:stop 200

karaf@root> osgi:start 200
Adding ActiveMQ to the ServiceMix: Apache ServiceMix instance comes
with an embedded ActiveMQ JMS broker. This makes it easy to communicate
between Camel routes using persistent messages on the same machine, but it
will also enable you to distribute your routes over multiple instances afterwards
for clustering or load-balancing.
Save this file in ServiceMix' deploy folder and use osgi:list to check on the
bundle status
You should now be able to put files in the activemq/input directory and see
them being moved to activemq/output.

Receiving the event messages: After deploying the first XML file, you're
obviously not seeing any events being logged yet. The event messages are
sent to an ActiveMQ queue, but there's nobody to receive the events yet. Let's
change that now by creating a second Blueprint XML file.
Checking Logs file: As soon as this second file has been deployed, you'll start
seeing the event messages in your log:display output
Thank You for Attending!

Mais conteúdo relacionado

Mais procurados

Syer Monitoring Integration And Batch
Syer Monitoring Integration And BatchSyer Monitoring Integration And Batch
Syer Monitoring Integration And BatchDave Syer
 
RESTful Web services using JAX-RS
RESTful Web services using JAX-RSRESTful Web services using JAX-RS
RESTful Web services using JAX-RSArun Gupta
 
JBoss Enterprise Application Platform 6 Troubleshooting
JBoss Enterprise Application Platform 6 TroubleshootingJBoss Enterprise Application Platform 6 Troubleshooting
JBoss Enterprise Application Platform 6 TroubleshootingAlexandre Cavalcanti
 
Apache Karaf - Building OSGi applications on Apache Karaf - T Frank & A Grzesik
Apache Karaf - Building OSGi applications on Apache Karaf - T Frank & A GrzesikApache Karaf - Building OSGi applications on Apache Karaf - T Frank & A Grzesik
Apache Karaf - Building OSGi applications on Apache Karaf - T Frank & A Grzesikmfrancis
 
Introduction to Wildfly 8 - Marchioni
Introduction to Wildfly 8 -  MarchioniIntroduction to Wildfly 8 -  Marchioni
Introduction to Wildfly 8 - MarchioniCodemotion
 
OSGi for real in the enterprise: Apache Karaf - NLJUG J-FALL 2010
OSGi for real in the enterprise: Apache Karaf - NLJUG J-FALL 2010OSGi for real in the enterprise: Apache Karaf - NLJUG J-FALL 2010
OSGi for real in the enterprise: Apache Karaf - NLJUG J-FALL 2010Adrian Trenaman
 
W-JAX 2011: OSGi with Apache Karaf
W-JAX 2011: OSGi with Apache KarafW-JAX 2011: OSGi with Apache Karaf
W-JAX 2011: OSGi with Apache KarafJerry Preissler
 
Implementing WebServices with Camel and CXF in ServiceMix
Implementing WebServices with Camel and CXF in ServiceMixImplementing WebServices with Camel and CXF in ServiceMix
Implementing WebServices with Camel and CXF in ServiceMixAdrian Trenaman
 
Message properties component in Mule
Message properties component in MuleMessage properties component in Mule
Message properties component in MuleKhan625
 
Spring framework 4.x
Spring framework 4.xSpring framework 4.x
Spring framework 4.xArawn Park
 
Servletarchitecture,lifecycle,get,post
Servletarchitecture,lifecycle,get,postServletarchitecture,lifecycle,get,post
Servletarchitecture,lifecycle,get,postvamsi krishna
 
Java MySQL Connector & Connection Pool Features & Optimization
Java MySQL Connector & Connection Pool Features & OptimizationJava MySQL Connector & Connection Pool Features & Optimization
Java MySQL Connector & Connection Pool Features & OptimizationKenny Gryp
 
플랫폼 통합을 위한 Client Module 개발 & 배포
플랫폼 통합을 위한 Client Module 개발 & 배포플랫폼 통합을 위한 Client Module 개발 & 배포
플랫폼 통합을 위한 Client Module 개발 & 배포흥래 김
 
HTML5 Server Sent Events/JSF JAX 2011 Conference
HTML5 Server Sent Events/JSF  JAX 2011 ConferenceHTML5 Server Sent Events/JSF  JAX 2011 Conference
HTML5 Server Sent Events/JSF JAX 2011 ConferenceRoger Kitain
 

Mais procurados (20)

Syer Monitoring Integration And Batch
Syer Monitoring Integration And BatchSyer Monitoring Integration And Batch
Syer Monitoring Integration And Batch
 
RESTful Web services using JAX-RS
RESTful Web services using JAX-RSRESTful Web services using JAX-RS
RESTful Web services using JAX-RS
 
JBoss Enterprise Application Platform 6 Troubleshooting
JBoss Enterprise Application Platform 6 TroubleshootingJBoss Enterprise Application Platform 6 Troubleshooting
JBoss Enterprise Application Platform 6 Troubleshooting
 
JBoss AS 7
JBoss AS 7JBoss AS 7
JBoss AS 7
 
Apache Karaf - Building OSGi applications on Apache Karaf - T Frank & A Grzesik
Apache Karaf - Building OSGi applications on Apache Karaf - T Frank & A GrzesikApache Karaf - Building OSGi applications on Apache Karaf - T Frank & A Grzesik
Apache Karaf - Building OSGi applications on Apache Karaf - T Frank & A Grzesik
 
Introduction to Wildfly 8 - Marchioni
Introduction to Wildfly 8 -  MarchioniIntroduction to Wildfly 8 -  Marchioni
Introduction to Wildfly 8 - Marchioni
 
OSGi for real in the enterprise: Apache Karaf - NLJUG J-FALL 2010
OSGi for real in the enterprise: Apache Karaf - NLJUG J-FALL 2010OSGi for real in the enterprise: Apache Karaf - NLJUG J-FALL 2010
OSGi for real in the enterprise: Apache Karaf - NLJUG J-FALL 2010
 
J boss
J bossJ boss
J boss
 
W-JAX 2011: OSGi with Apache Karaf
W-JAX 2011: OSGi with Apache KarafW-JAX 2011: OSGi with Apache Karaf
W-JAX 2011: OSGi with Apache Karaf
 
Implementing WebServices with Camel and CXF in ServiceMix
Implementing WebServices with Camel and CXF in ServiceMixImplementing WebServices with Camel and CXF in ServiceMix
Implementing WebServices with Camel and CXF in ServiceMix
 
Message properties component in Mule
Message properties component in MuleMessage properties component in Mule
Message properties component in Mule
 
Spring framework 4.x
Spring framework 4.xSpring framework 4.x
Spring framework 4.x
 
Oracle API Gateway Installation
Oracle API Gateway InstallationOracle API Gateway Installation
Oracle API Gateway Installation
 
HTML5 Refresher
HTML5 RefresherHTML5 Refresher
HTML5 Refresher
 
Servletarchitecture,lifecycle,get,post
Servletarchitecture,lifecycle,get,postServletarchitecture,lifecycle,get,post
Servletarchitecture,lifecycle,get,post
 
Introduction to-osgi
Introduction to-osgiIntroduction to-osgi
Introduction to-osgi
 
Fuse technology-2015
Fuse technology-2015Fuse technology-2015
Fuse technology-2015
 
Java MySQL Connector & Connection Pool Features & Optimization
Java MySQL Connector & Connection Pool Features & OptimizationJava MySQL Connector & Connection Pool Features & Optimization
Java MySQL Connector & Connection Pool Features & Optimization
 
플랫폼 통합을 위한 Client Module 개발 & 배포
플랫폼 통합을 위한 Client Module 개발 & 배포플랫폼 통합을 위한 Client Module 개발 & 배포
플랫폼 통합을 위한 Client Module 개발 & 배포
 
HTML5 Server Sent Events/JSF JAX 2011 Conference
HTML5 Server Sent Events/JSF  JAX 2011 ConferenceHTML5 Server Sent Events/JSF  JAX 2011 Conference
HTML5 Server Sent Events/JSF JAX 2011 Conference
 

Destaque

REST Coder: Auto Generating Client Stubs and Documentation for REST APIs
REST Coder: Auto Generating Client Stubs and Documentation for REST APIsREST Coder: Auto Generating Client Stubs and Documentation for REST APIs
REST Coder: Auto Generating Client Stubs and Documentation for REST APIsHiranya Jayathilaka
 
Open source vs commercial esb and api management platform draft wh1 for smals
Open source vs commercial esb and api management platform   draft wh1 for smalsOpen source vs commercial esb and api management platform   draft wh1 for smals
Open source vs commercial esb and api management platform draft wh1 for smalsIgnacio Gil Bárez
 
Apache stratos hangout 3
Apache stratos hangout   3Apache stratos hangout   3
Apache stratos hangout 3Nirmal Fernando
 
Apache stratos (incubation) technical deep dive
Apache stratos (incubation) technical deep diveApache stratos (incubation) technical deep dive
Apache stratos (incubation) technical deep diveLakmal Warusawithana
 
The Rise of the Open Source ESB
The Rise of the Open Source ESBThe Rise of the Open Source ESB
The Rise of the Open Source ESBJason Bloomberg
 
Apache ActiveMQ and Apache ServiceMix
Apache ActiveMQ and Apache ServiceMixApache ActiveMQ and Apache ServiceMix
Apache ActiveMQ and Apache ServiceMixBruce Snyder
 
Mule Anypoint API Gateway
Mule Anypoint API GatewayMule Anypoint API Gateway
Mule Anypoint API Gatewayrkulandaivel
 
Apache Camel Introduction & What's in the box
Apache Camel Introduction & What's in the boxApache Camel Introduction & What's in the box
Apache Camel Introduction & What's in the boxClaus Ibsen
 
A Presentation On Enterprise Application Integration
A Presentation On Enterprise Application IntegrationA Presentation On Enterprise Application Integration
A Presentation On Enterprise Application IntegrationUmesh Upadhyaya
 
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
 
Getting started with Enterprise Application Integration (EAI) using Enterpris...
Getting started with Enterprise Application Integration (EAI) using Enterpris...Getting started with Enterprise Application Integration (EAI) using Enterpris...
Getting started with Enterprise Application Integration (EAI) using Enterpris...Tamim Khan
 
The Past, Present and Future of Enterprise Integration
The Past, Present and Future of  Enterprise IntegrationThe Past, Present and Future of  Enterprise Integration
The Past, Present and Future of Enterprise IntegrationKasun Indrasiri
 
Enterprise Application Integration
Enterprise Application IntegrationEnterprise Application Integration
Enterprise Application IntegrationTomas Dermisek
 
Showdown: Integration Framework (Spring Integration, Apache Camel) vs. Enterp...
Showdown: Integration Framework (Spring Integration, Apache Camel) vs. Enterp...Showdown: Integration Framework (Spring Integration, Apache Camel) vs. Enterp...
Showdown: Integration Framework (Spring Integration, Apache Camel) vs. Enterp...Kai Wähner
 
Future of Integration | MuleSoft
Future of Integration | MuleSoftFuture of Integration | MuleSoft
Future of Integration | MuleSoftMuleSoft
 

Destaque (20)

REST Coder: Auto Generating Client Stubs and Documentation for REST APIs
REST Coder: Auto Generating Client Stubs and Documentation for REST APIsREST Coder: Auto Generating Client Stubs and Documentation for REST APIs
REST Coder: Auto Generating Client Stubs and Documentation for REST APIs
 
Introduction to Apache Synapse
Introduction to Apache SynapseIntroduction to Apache Synapse
Introduction to Apache Synapse
 
Open source vs commercial esb and api management platform draft wh1 for smals
Open source vs commercial esb and api management platform   draft wh1 for smalsOpen source vs commercial esb and api management platform   draft wh1 for smals
Open source vs commercial esb and api management platform draft wh1 for smals
 
Apache stratos hangout 3
Apache stratos hangout   3Apache stratos hangout   3
Apache stratos hangout 3
 
Apache stratos (incubation) technical deep dive
Apache stratos (incubation) technical deep diveApache stratos (incubation) technical deep dive
Apache stratos (incubation) technical deep dive
 
Storm v0.2
Storm v0.2Storm v0.2
Storm v0.2
 
The Rise of the Open Source ESB
The Rise of the Open Source ESBThe Rise of the Open Source ESB
The Rise of the Open Source ESB
 
Apache ActiveMQ and Apache ServiceMix
Apache ActiveMQ and Apache ServiceMixApache ActiveMQ and Apache ServiceMix
Apache ActiveMQ and Apache ServiceMix
 
Mule Anypoint API Gateway
Mule Anypoint API GatewayMule Anypoint API Gateway
Mule Anypoint API Gateway
 
Mule ESB Training
Mule ESB TrainingMule ESB Training
Mule ESB Training
 
Apache Camel Introduction & What's in the box
Apache Camel Introduction & What's in the boxApache Camel Introduction & What's in the box
Apache Camel Introduction & What's in the box
 
Esb 4.9.0 release webinar
Esb 4.9.0 release webinarEsb 4.9.0 release webinar
Esb 4.9.0 release webinar
 
A Presentation On Enterprise Application Integration
A Presentation On Enterprise Application IntegrationA Presentation On Enterprise Application Integration
A Presentation On Enterprise Application Integration
 
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
 
Getting started with Enterprise Application Integration (EAI) using Enterpris...
Getting started with Enterprise Application Integration (EAI) using Enterpris...Getting started with Enterprise Application Integration (EAI) using Enterpris...
Getting started with Enterprise Application Integration (EAI) using Enterpris...
 
EAI example
EAI exampleEAI example
EAI example
 
The Past, Present and Future of Enterprise Integration
The Past, Present and Future of  Enterprise IntegrationThe Past, Present and Future of  Enterprise Integration
The Past, Present and Future of Enterprise Integration
 
Enterprise Application Integration
Enterprise Application IntegrationEnterprise Application Integration
Enterprise Application Integration
 
Showdown: Integration Framework (Spring Integration, Apache Camel) vs. Enterp...
Showdown: Integration Framework (Spring Integration, Apache Camel) vs. Enterp...Showdown: Integration Framework (Spring Integration, Apache Camel) vs. Enterp...
Showdown: Integration Framework (Spring Integration, Apache Camel) vs. Enterp...
 
Future of Integration | MuleSoft
Future of Integration | MuleSoftFuture of Integration | MuleSoft
Future of Integration | MuleSoft
 

Semelhante a What is Apache ServiceMix? Understanding this open-source ESB

WebServices in ServiceMix with CXF
WebServices in ServiceMix with CXFWebServices in ServiceMix with CXF
WebServices in ServiceMix with CXFAdrian Trenaman
 
Jboss App Server
Jboss App ServerJboss App Server
Jboss App Serveracosdt
 
IBM BP Session - Multiple CLoud Paks and Cloud Paks Foundational Services.pptx
IBM BP Session - Multiple CLoud Paks and Cloud Paks Foundational Services.pptxIBM BP Session - Multiple CLoud Paks and Cloud Paks Foundational Services.pptx
IBM BP Session - Multiple CLoud Paks and Cloud Paks Foundational Services.pptxGeorg Ember
 
Talkbits service architecture and deployment
Talkbits service architecture and deploymentTalkbits service architecture and deployment
Talkbits service architecture and deploymentOpen-IT
 
Installing tivoli system automation for high availability of db2 udb bcu on a...
Installing tivoli system automation for high availability of db2 udb bcu on a...Installing tivoli system automation for high availability of db2 udb bcu on a...
Installing tivoli system automation for high availability of db2 udb bcu on a...Banking at Ho Chi Minh city
 
APACHE
APACHEAPACHE
APACHEARJUN
 
TopStack Product Architecture 2013-Q3
TopStack Product Architecture 2013-Q3TopStack Product Architecture 2013-Q3
TopStack Product Architecture 2013-Q3TranscendComputing
 
Jazoon2010 - Edgar Silva - Open source SOA on Steroids
Jazoon2010 - Edgar Silva - Open source SOA on SteroidsJazoon2010 - Edgar Silva - Open source SOA on Steroids
Jazoon2010 - Edgar Silva - Open source SOA on SteroidsEdgar Silva
 
autumo ifaceX - Product Presentation
autumo ifaceX - Product Presentationautumo ifaceX - Product Presentation
autumo ifaceX - Product PresentationMichael Gasche
 
Best Practices for Middleware and Integration Architecture Modernization with...
Best Practices for Middleware and Integration Architecture Modernization with...Best Practices for Middleware and Integration Architecture Modernization with...
Best Practices for Middleware and Integration Architecture Modernization with...Claus Ibsen
 
Intro to Alfresco for Developers
Intro to Alfresco for DevelopersIntro to Alfresco for Developers
Intro to Alfresco for DevelopersJeff Potts
 
Putting Kafka In Jail – Best Practices To Run Kafka On Kubernetes & DC/OS
Putting Kafka In Jail – Best Practices To Run Kafka On Kubernetes & DC/OSPutting Kafka In Jail – Best Practices To Run Kafka On Kubernetes & DC/OS
Putting Kafka In Jail – Best Practices To Run Kafka On Kubernetes & DC/OSLightbend
 

Semelhante a What is Apache ServiceMix? Understanding this open-source ESB (20)

Servicemix4.5.0
Servicemix4.5.0Servicemix4.5.0
Servicemix4.5.0
 
zLAMP
zLAMPzLAMP
zLAMP
 
WebServices in ServiceMix with CXF
WebServices in ServiceMix with CXFWebServices in ServiceMix with CXF
WebServices in ServiceMix with CXF
 
Jboss Tutorial Basics
Jboss Tutorial BasicsJboss Tutorial Basics
Jboss Tutorial Basics
 
Jboss App Server
Jboss App ServerJboss App Server
Jboss App Server
 
IBM BP Session - Multiple CLoud Paks and Cloud Paks Foundational Services.pptx
IBM BP Session - Multiple CLoud Paks and Cloud Paks Foundational Services.pptxIBM BP Session - Multiple CLoud Paks and Cloud Paks Foundational Services.pptx
IBM BP Session - Multiple CLoud Paks and Cloud Paks Foundational Services.pptx
 
Riding with camel
Riding with camelRiding with camel
Riding with camel
 
Talkbits service architecture and deployment
Talkbits service architecture and deploymentTalkbits service architecture and deployment
Talkbits service architecture and deployment
 
Installing tivoli system automation for high availability of db2 udb bcu on a...
Installing tivoli system automation for high availability of db2 udb bcu on a...Installing tivoli system automation for high availability of db2 udb bcu on a...
Installing tivoli system automation for high availability of db2 udb bcu on a...
 
APACHE
APACHEAPACHE
APACHE
 
Osgi
OsgiOsgi
Osgi
 
TopStack Product Architecture 2013-Q3
TopStack Product Architecture 2013-Q3TopStack Product Architecture 2013-Q3
TopStack Product Architecture 2013-Q3
 
Introduction to Microsoft Azure 101
Introduction to Microsoft Azure 101Introduction to Microsoft Azure 101
Introduction to Microsoft Azure 101
 
Apache ppt
Apache pptApache ppt
Apache ppt
 
Jazoon2010 - Edgar Silva - Open source SOA on Steroids
Jazoon2010 - Edgar Silva - Open source SOA on SteroidsJazoon2010 - Edgar Silva - Open source SOA on Steroids
Jazoon2010 - Edgar Silva - Open source SOA on Steroids
 
autumo ifaceX - Product Presentation
autumo ifaceX - Product Presentationautumo ifaceX - Product Presentation
autumo ifaceX - Product Presentation
 
Best Practices for Middleware and Integration Architecture Modernization with...
Best Practices for Middleware and Integration Architecture Modernization with...Best Practices for Middleware and Integration Architecture Modernization with...
Best Practices for Middleware and Integration Architecture Modernization with...
 
Intro to Alfresco for Developers
Intro to Alfresco for DevelopersIntro to Alfresco for Developers
Intro to Alfresco for Developers
 
Putting Kafka In Jail – Best Practices To Run Kafka On Kubernetes & DC/OS
Putting Kafka In Jail – Best Practices To Run Kafka On Kubernetes & DC/OSPutting Kafka In Jail – Best Practices To Run Kafka On Kubernetes & DC/OS
Putting Kafka In Jail – Best Practices To Run Kafka On Kubernetes & DC/OS
 
sveltekit-en.pdf
sveltekit-en.pdfsveltekit-en.pdf
sveltekit-en.pdf
 

Último

Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observabilityitnewsafrica
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integrationmarketing932765
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...itnewsafrica
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 

Último (20)

Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 

What is Apache ServiceMix? Understanding this open-source ESB

  • 1.
  • 2. What is an Apache-Service Mix ? Apache ServiceMix is an enterprise-class open-source distributed enterprise service bus (ESB) and serviceoriented architecture (SOA) toolkit. It was built from the ground up on the semantics and APIs of the Java Business Integration (JBI) specification JSR 208 and released under the Apache License. ServiceMix 4 also fully supports OSGi. ServiceMix is lightweight and easily embeddable, has integrated Spring support and can be run at the edge of the network (inside a client or server), as a standalone ESB provider or as a service within another ESB. You can use ServiceMix in Java SE or a Java EE application server. ServiceMix uses ActiveMQ to provide remoting, clustering, reliability and distributed failover.
  • 3. What is an ESB ? "An Enterprise Service Bus (ESB) is a new architecture that, exploits Web services, Messaging middleware, intelligent routing, and transformation. ESBs act as a lightweight, ubiquitous integration backbone through which software services and application components flow.”
  • 4. What is an ESB ?? An ESB acts as a shared messaging layer for connecting applications and other services throughout an enterprise computing infrastructure. It supplements its core asynchronous messaging backbone with intelligent transformation and routing to ensure messages are passed reliably. Services participate in the ESB using either web services messaging standards or JMS
  • 6. Apache ServiceMix - Architecture §ServiceMix employs a layered architecture based on OSGi • The core : A lightweight runtime named “Karaf”, which extends OSGi with powerful features for handling and managing OSGI bundles • The technology layer : A layer of component technologies that sits on top of the core to support your applications
  • 7. Apache ServiceMix–Core Layer Features •Hot deployment support for OSGi bundles • Dynamic configuration of services through the OSGi “ConfigurationAdmin” service • Dynamic logging back-end provided by Log4J supports different APIs (SLF4J, Java Utils, JCL, Avalon, Tomcat, OSGi) • Application provisioning through file-drop, Maven repository and remote download (http://) • Administration via an extensible shell console • Secure remote access via ssh • Security framework based on JAAS
  • 8. Apache ServiceMix – Technology Layer Features oSpring Framework • ServiceMix loads an OSGi bundle into its runtime, or generates an OSGi bundle on the fly, and then instantiates the Spring application context o JMS Message Broker • ServiceMix deploys the Apache ActiveMQ broker (OSGi-ready) o JAX-WS/JAX-RS Web Services support • ServiceMix deploys the Apache CXF runtime (OSGi-ready) o Enterprise Integration Patterns (EIP) support • ServiceMix deploys the Apache Camel runtime (OSGi-ready) o Java Business Integration (JBI) support • ServiceMix provides a JBI 1.0 container, to support legacy code • implemented as service units / service assemblies and deployed using ServiceMix 3.x oCan be extended to support technologies such as SCA or EJB3
  • 9. Apache ServiceMix – Deployment Model oWhen you deploy a ServiceMix solution, you typically deploy the core (Karaf) plus one or more technology Components oExamples: • To support EIPs : Karaf runtime + Camel feature • To support JAX-WS/JAX-RS solutions : Karaf runtime + CXF feature • To support JMS solutions : Karaf runtime + ActiveMQ feature • To support JBI-based solutions : Karaf runtime + JBI feature
  • 10. JBI (Java Business Integration) JBI defines an architecture that allows the construction of integration systems from plug-in components, that interoperate through the method of mediated message exchange.
  • 11. JBI 2 kinds of components ● Service Engine (SE) Allow implementing business logic or services on the ESB e.g. servicemix-drools or servicemix-bean ● Binding Components Provide connectivity to external services (transport, normalization, ...) e.g. servicemix-ftp or servicemix-http
  • 13. Overview of apache servicemix Apache ServiceMix – Integration container Apache Camel – Integration Routes Apache ActiveMQ - Messaging Apache Karaf – OSGI Management Apache Felix - OSGI Apache Aries – OSGI enterprise
  • 14. Installation System requirements • Java Developer Kit (JDK) 1.6.x (Java 6), for both deployment and compiling. (Note: Java 7 is currently not supported) • About 100 MB of free disk space Downloading Apache ServiceMix • Apache ServiceMix 4.4.2 is available under the Apache License v2 and can be downloaded from http://servicemix.apache.org/downloads.html. Depending on your operation system, you should download either the tar.gz or the zip file: • tar.gz for Linux/Unix/MacOS X • zip for Windows
  • 15. Installation On Linux/Unix/MacOS X On a command shell, navigate to the directory where you extracted ServiceMix and the bin/servicemix shell script Example: if ServiceMix is installed in the ~/Applications/apache-servicemix4.4.2 directory. $ cd ~/Applications/apache-servicemix-4.4.2 $ ./bin/servicemix !/quickstart/images/start-linux.png |width=75%|height=75%! Apache ServiceMix 4.4.2
  • 16. Apache ServiceMix console Working with bundles • When ServiceMix is first started, a whole set of bundles providing the core features for the product are being installed. Let's use the command console to find out more about them... • The osgi:list command can be used to get a list of all bundles currently installed. Enter this karaf@root> osgi:list For every bundle, you see: • the bundle id • the bundle state • if the bundle contains a Blueprint or Spring XML file, the next 2 columns will show you if the beans defined there were created successfully • the bundle start level • the bundle name and version
  • 17. Apache ServiceMix console KARAF – It is a command line tool used to install/uninstall parts of a SMX application and also to troubleshoot problems
  • 18. Apache ServiceMix console Grep command in karaf karaf@root> osgi:list | grep camel
  • 19. Apache ServiceMix console Working with logging • To look at the message in the log file - karaf@root> log:display • If you're only interested in the latest exception in the log file - karaf@root> log:display-exception • You can also change the log level at runtime by using the log:set command. You can try these commands on your instance now by first setting the log level to DEBUG and then using grep to make sure that you can actually see the extra logging. - karaf@root> log:set DEBUG - karaf@root> log:display | grep DEBUG
  • 20. Checking Logs file karaf@root>log:display-exception it display the current exception
  • 21. Checking Logs file karaf@root>log:set DEBUG to set the logs in DEBUG Mode karaf@root>log:display karaf@root>log:set INFO to set the logs in INFO Mode karaf@root>log:display
  • 22. Other Optional features: The list of features is available with the features:list command, we are taking some of few regular basis command.This command shows the status weather it is installed or not, and other tab shows version and Name. and grep to find the things in the list that you're interested in. karaf@root> features:list karaf@root> features:list | grep camel
  • 23. Web console:To get the web console installed in ServiceMix, install the feature from your console karaf@root> features:install webconsole karaf@root> features:list | grep webconsole your browser to http://localhost:8181/system/console and login with user smx and password smx to access the web console
  • 24. Servicemix-camel : The servicemix-camel component provides support for using Apache Camel to provide a full set of Enterprise Integration Patterns and flexible routing and transformation in both Java code or Spring XML to route services on the Normalized Message Router Camel –Route and Active MQ Deployment : The way to deploy the Camel route Blueprint and Active MQ XML files both having same procedure. 1)Create a new file having the Below configration in the Deployment directory. 2)When the file deployed sucessfully it creates two folder in the home directory (as per specified in Blueprint.XML file) 3)One is HOME/ input and Home/output dir 4)Now copy a file in the input Dir 5)It automatically copied to output Dir For ActiveMQ it create a new dir under HOME is ActiveMQ and under this we have two sub directory Input and Output Let see in our new slide…
  • 26. Camel Route:1) Define the route in a Blueprint XML file in deployment folder having the below configrations. 2) Just create a new XML file in the deploy folder with the code below to start a route to copy files from one directory to another.
  • 27. Check in Logs by log:display we got the below massage for the file sucessfully moved
  • 28. To Stop and Starts the Route below are the commands: karaf@root> osgi:stop 200 karaf@root> osgi:start 200
  • 29. To Stop and Starts the Route below are the commands: karaf@root> osgi:stop 200 karaf@root> osgi:start 200
  • 30. Adding ActiveMQ to the ServiceMix: Apache ServiceMix instance comes with an embedded ActiveMQ JMS broker. This makes it easy to communicate between Camel routes using persistent messages on the same machine, but it will also enable you to distribute your routes over multiple instances afterwards for clustering or load-balancing.
  • 31. Save this file in ServiceMix' deploy folder and use osgi:list to check on the bundle status You should now be able to put files in the activemq/input directory and see them being moved to activemq/output. Receiving the event messages: After deploying the first XML file, you're obviously not seeing any events being logged yet. The event messages are sent to an ActiveMQ queue, but there's nobody to receive the events yet. Let's change that now by creating a second Blueprint XML file.
  • 32. Checking Logs file: As soon as this second file has been deployed, you'll start seeing the event messages in your log:display output
  • 33. Thank You for Attending!