SlideShare a Scribd company logo
CamelOne 2013	

June 10-11 2013	

Boston, MA	

1	

Connecting Applications
Everywhere with
ActiveMQ	

Rob Davies	

Technical Director, Fuse Engineering,	

Red Hat Inc.
CamelOne 2013	

CamelOne	

2	

Rob Davies
Technical Director, Red Hat -
h"p://www.redhat.com	

■  Previously CTO of FuseSource - #1 OS
vendor for integration and messaging 	

■  Software projects:	

■  Apache ActiveMQ, 	

■  Apache Camel	

■  Apache ServiceMix	

■  On	
  Expert	
  Group	
  for	
  JSR	
  343:	
  JMS	
  2.0	
  
■  Co-­‐author	
  of	
  AcCveMQ	
  in	
  AcCon:	
  
CamelOne 2013	

CamelOne	

 Why use Message-
Oriented Middleware?	

  Robustness	
  to	
  change	
  
  Time	
  Independence	
  
  LocaCon	
  Independence	
  
  Hide	
  Latency	
  
  Scalability	
  
  Event	
  driven	
  
  Simplicity	
  
  Configurable	
  Quality	
  of	
  Service	
  
  PlaRorm	
  and	
  Language	
  IntegraCon	
  
  Fault	
  tolerant	
  	
  
CamelOne 2013	

CamelOne	

4	

What is Apache ActiveMQ ?
■ Top Level Apache Software Foundation Project	

■ Wildly popular, high performance, reliable message
broker	

■ Connects to nearly everything	

■ Native Java, C/C++, .Net,	

■ AMQP 1.0, MQTT 3.1, STOMP (1.0-1.2) and
OpenWire	

■ STOMP enables Ruby, JS, Perl, Python, PHP,
ActionScript …	

■ Embedded and standalone deployment options

Recommended for you

Apache Kafka - Martin Podval
Apache Kafka - Martin PodvalApache Kafka - Martin Podval
Apache Kafka - Martin Podval

Apache Kafka is a distributed messaging system that allows for publishing and subscribing to streams of records, known as topics, in a fault-tolerant and scalable way. It is used for building real-time data pipelines and streaming apps. Producers write data to topics which are committed to disks across partitions and replicated for fault tolerance. Consumers read data from topics in a decoupled manner based on offsets. Kafka can process streaming data in real-time and at large volumes with low latency and high throughput.

apache kafka
An Introduction to Gradle for Java Developers
An Introduction to Gradle for Java DevelopersAn Introduction to Gradle for Java Developers
An Introduction to Gradle for Java Developers

Gradle is a superb software build tool with a bunch of great features and the presentation emphasizes on its most powerful one: its Groovy DSL.

groovysoftwaregradle
Apache Camel with Spring boot
Apache Camel with Spring bootApache Camel with Spring boot
Apache Camel with Spring boot

This document provides an introduction to Apache Camel with Spring Boot. It discusses the architecture of Apache Camel including the routing engine, processor, components and Camel context. It explains that Apache Camel is an integration framework that allows defining routing rules and connecting different systems using a common API. The document outlines reasons to use Apache Camel such as routing, extensive components, easy configuration and integration patterns. It also provides an example of how to build routes with Apache Camel and integrate it with Spring Boot.

apache camelspring bootjava
CamelOne 2013	

CamelOne	

Messaging: 	

The Basics
CamelOne 2013	

CamelOne	

Message Channels and
Routing	

•  Message Channels	

•  Named communication between interested parties	

•  JMS calls them ‘Destinations’	

•  Can “tune-in” to multiple channels using wildcards	

•  Can fine-tune message consumption with selectors 	

•  Can route a message based on content
CamelOne 2013	

CamelOne	

Message Channels = JMS Destinations	

Producer	

Broker	

 Consumer	

Consumer	

Consumer	

Destination	

WIDGET	

Destination	

ORDER
CamelOne 2013	

CamelOne	

Point-toPoint Channel: JMS Queues	

Producer	

Consumer	

Consumer	

Consumer	

Queue

Recommended for you

Ansible Playbook
Ansible PlaybookAnsible Playbook
Ansible Playbook

Rohit Sharma will present on Ansible playbooks. The presentation will cover an overview of Ansible, its features, architecture, and a comparison to Puppet and Chef. It will include a demonstration of Ansible. Attendees are asked to be punctual, provide constructive feedback, keep devices on silent mode, and avoid disturbances during the session.

devops
Running Apache NiFi with Apache Spark : Integration Options
Running Apache NiFi with Apache Spark : Integration OptionsRunning Apache NiFi with Apache Spark : Integration Options
Running Apache NiFi with Apache Spark : Integration Options

A walk-through of various options in integration Apache Spark and Apache NiFi in one smooth dataflow. There are now several options in interfacing between Apache NiFi and Apache Spark with Apache Kafka and Apache Livy.

apache sparkapache nifihortonworks
Discover Quarkus and GraalVM
Discover Quarkus and GraalVMDiscover Quarkus and GraalVM
Discover Quarkus and GraalVM

This presentation about Quarkus and GraalVM was done during a BBL in my client Enedis (France). A demonstration was following this presentation.

quarkusgraalvmjava
CamelOne 2013	

CamelOne	

Publish/Subscribe Channel: JMS Topics	

Producer	

Consumer	

Consumer	

Consumer	

Topic
CamelOne 2013	

CamelOne	

 Message Routing :
Selectors 	

DestinationProducer
Consumer
color='blue'
Consumer
color='red'
CamelOne 2013	

CamelOne	

 Message Routing : Destination
Wildcards	

Topic:
BAR.BEER
Consumer
topic:BAR.>
Topic:
BAR.WINE
Producer
CamelOne 2013	

CamelOne	

Exclusive Consumers	

Producer	

Consumer	

Consumer	

Consumer	

Queue

Recommended for you

Apache NiFi in the Hadoop Ecosystem
Apache NiFi in the Hadoop Ecosystem Apache NiFi in the Hadoop Ecosystem
Apache NiFi in the Hadoop Ecosystem

The document discusses Apache NiFi and its role in the Hadoop ecosystem. It provides an overview of NiFi, describes how it can be used to integrate with Hadoop components like HDFS, HBase, and Kafka. It also discusses how NiFi supports stream processing integrations and outlines some use cases. The document concludes by discussing future work, including improving NiFi's high availability, multi-tenancy, and expanding its ecosystem integrations.

Lessons Learned Building a Connector Using Kafka Connect (Katherine Stanley &...
Lessons Learned Building a Connector Using Kafka Connect (Katherine Stanley &...Lessons Learned Building a Connector Using Kafka Connect (Katherine Stanley &...
Lessons Learned Building a Connector Using Kafka Connect (Katherine Stanley &...

While many companies are embracing Apache Kafka as their core event streaming platform they may still have events they want to unlock in other systems. Kafka Connect provides a common API for developers to do just that and the number of open-source connectors available is growing rapidly. The IBM MQ sink and source connectors allow you to flow messages between your Apache Kafka cluster and your IBM MQ queues. In this session I will share our lessons learned and top tips for building a Kafka Connect connector. I’ll explain how a connector is structured, how the framework calls it and some of the things to consider when providing configuration options. The more Kafka Connect connectors the community creates the better, as it will enable everyone to unlock the events in their existing systems.

apachesummitnyc
Room 1 - 7 - Lê Quốc Đạt - Upgrading network of Openstack to SDN with Tungste...
Room 1 - 7 - Lê Quốc Đạt - Upgrading network of Openstack to SDN with Tungste...Room 1 - 7 - Lê Quốc Đạt - Upgrading network of Openstack to SDN with Tungste...
Room 1 - 7 - Lê Quốc Đạt - Upgrading network of Openstack to SDN with Tungste...

This document discusses upgrading an Openstack network to SDN with Tungsten Fabric. It evaluates three solutions: 1) using the same database across regions, 2) hot-swapping Open vSwitch and virtual routers, and 3) using an ML2 plugin. The recommended solution is #3 as it provides minimum downtime. Key steps include installing the OpenContrail driver, synchronizing network resources between Openstack and Tungsten, and live migrating VMs. Topology 2 is also recommended as it requires minimum changes. The upgrade migrated 80 VMs and 16 compute nodes to the SDN network without downtime. Issues discussed include synchronizing resources and migrating VMs between Open vSwitch and virtual routers.

CamelOne 2013	

CamelOne	

Message Groups	

Like Parallel Exclusive Consumers	

■ Guaranteed ordering of related messages across a
Queue	

■ But – load balancing of messages across multiple
consumers	

■ All messages with the same JMSXGroupID go to
the same consumer 	

■ How you group messages is down to the application’s
producer	

■ To explicitly close a group, set the JMSXGroupSeq
to -1	

	

 13
CamelOne 2013	

CamelOne	

14	

Message Groups code:	

Message message = session.createTextMessage("<foo>hi from Devoxx</foo>");	

message.setStringProperty("JMSXGroupID", ”RHT_NYSE");	

producer.send(message);
	

Message message = session.createTextMessage(foobye from Devoxx/foo);	

message.setStringProperty(JMSXGroupID, ”RHT_NYSE);	

message.setStringProperty(JMSXGroupSeq, -1);	

producer.send(message);




//Starting a Group …
//Close a Group …
CamelOne 2013	

CamelOne	

Deploying ActiveMQ	

ActiveMQ Can run standalone or embedded	

■ As a standalone, or part of a highly available message
broker cluster	

■ Embedded – easy to use an entire broker in JUnit tests
(no need to Mock)	

■ In Tomcat, deployed as a war	

■ In JEE Server – either co-locate – or use client with JCA	

■ ActiveMQ distributions contain a rar for this purpose	

15
CamelOne 2013	

CamelOne	

ActiveMQ: 	

Message Storage

Recommended for you

Terraform Basics
Terraform BasicsTerraform Basics
Terraform Basics

As part of this presentation we covered basics of Terraform which is Infrastructure as code. It will helps to Devops teams to start with Terraform. This document will be helpful for the development who wants to understand infrastructure as code concepts and if they want to understand the usability of terrform

infrastructuredeploymentterraform
Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft...
Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft...Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft...
Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft...

Using Terraform to automate your infrastructure on AWS. What is Terraform and how is it different from Ansible. How to control cloud deployments using Terraform.

popuplofttlvawscloud
Apache NiFi- MiNiFi meetup Slides
Apache NiFi- MiNiFi meetup SlidesApache NiFi- MiNiFi meetup Slides
Apache NiFi- MiNiFi meetup Slides

MiNiFi is a recently started sub-project of Apache NiFi that is a complementary data collection approach which supplements the core tenets of NiFi in dataflow management, focusing on the collection of data at the source of its creation. Simply, MiNiFi agents take the guiding principles of NiFi and pushes them to the edge in a purpose built design and deploy manner. This talk will focus on MiNiFi's features, go over recent developments and prospective plans, and give a live demo of MiNiFi. The config.yml is available here: https://gist.github.com/JPercivall/f337b8abdc9019cab5ff06cb7f6ff09a

apache hadoopminifihortonworks
CamelOne 2013	

CamelOne	

Message Delivery Mode	

•  Messages can be persisted – allowing for
decoupled applications	

•  For Queues, any message delivered as
PERSISTENT must be stored on long term storage
before being delivered to a consumer	

•  For Topics, a message delivered as PERSISTENT
will only be stored if there exists a durable subscriber	

•  NON-PERSISTENT messages may also be stored
on disk if the memory limits of the broker have been
reached	

17
CamelOne 2013	

CamelOne	

 Message stores supported by
ActiveMQ 	

■ SQL (JDBC)	

■ SQL (JDBC) with journal	

■ AMQ Message Store	

■ Kaha	

■ KahaDB	

■ LevelDB	

18	

Slow but
popular
	

Don’t use
(deprecated)
	

The “current”
default
	

The “best yet”
CamelOne 2013	

CamelOne	

LevelDB Store vs KahaDB	

•  Fewer index entries per message than KahaDB	

•  Faster recovery when a broker restarts	

•  LevelDB index out-perform Btree index at sequential access .	

•  LevelDB indexes support concurrent read access.	

•  Pauseless data log file garbage collection cycles.	

•  Fewer IOPS to load stored messages.	

•  It exposes it's status via JMX for monitoring
CamelOne 2013	

CamelOne	

ActiveMQ: LevelDB Store

Recommended for you

Apache web service
Apache web serviceApache web service
Apache web service

Here I covered the cores of Apache and also discuss each and every core. Virtual host, resistance server process some protocols like HTTP, SMTP, DNS FTP, are also be highlighted. Focus on some installing part of apache.

apacheapache namename based virtual host
Apache kafka
Apache kafkaApache kafka
Apache kafka

Apache Kafka is a fast, scalable, and distributed messaging system. It is designed for high throughput systems and can replace traditional message brokers due to its better throughput, built-in partitioning for scalability, replication for fault tolerance, and ability to handle large message processing applications. Kafka uses topics to organize streams of messages, partitions to distribute data, and replicas to provide redundancy and prevent data loss. It supports reliable messaging patterns including point-to-point and publish-subscribe.

kafka
Apache Camel Introduction
Apache Camel IntroductionApache Camel Introduction
Apache Camel Introduction

This webinar introduces Apache Camel's large range of components for connectivity and protocol support, and how the 50+ patterns create a powerful toolbox that lets you build integration solutions "Lego style". This webinar will introduce you to the Camel community and why it is so important for any serious open source project to have a thriving community. Speaker: Claus Ibsen - Camel PMC member and top committer

camelintegrationwebinar
CamelOne 2013	

CamelOne	

ActiveMQ: 	

Protocols
CamelOne 2013	

CamelOne	

OpenWire 	

Advantages:	

•  Fast – optimized for
ActiveMQ	

•  client failover	

•  automatic reconnect	

•  Client load balancing	

•  Flow control	

•  Many advanced features	

22	

Disadvantages:	

	

•  Not a recognized
standard	

•  Only Java, C/C++/.Net	

http://activemq.apache.org/openwire.html
CamelOne 2013	

CamelOne	

MQTT http://mqtt.org	

Advantages:	

•  M2M/”Internet of Things” transport	

•  Proposed as an OASIS standard	

•  Extremely light weight	

•  Growing support from vendors and OS
products	

•  WebSphereMQ	

•  ActiveMQ + Apollo	

•  Mosquitto	

•  RabbitMQ	

23	

Disadvantages:	

•  3.1 does not support
Queues	

•  Advanced features not
standard	

•  Flow control	

•  Failover etc.
CamelOne 2013	

CamelOne	

AMQP – see www.amqp.org	

Advantages:	

•  AMQP 1.0 OASIS
standard	

•  Proposed as an OASIS
standard	

•  Commoditizes the
Broker	

24	

Disadvantages:	

•  One size doesn’t really fit
all	

•  Currently no plans for IBM
or Tibco to adopt it

Recommended for you

Terraform vs Pulumi
Terraform vs PulumiTerraform vs Pulumi
Terraform vs Pulumi

Terraform and Pulumi are both infrastructure as code tools but they differ in key ways. Terraform uses HCL syntax and focuses on infrastructure resources while Pulumi uses regular programming languages to define cloud resources and applications together. Pulumi supports more providers but Terraform is easier to use for developers with system administration experience. Both tools use state files to track infrastructure changes but Pulumi state is managed through its CLI and service while Terraform uses local or remote state files.

Apache Ambari: Managing Hadoop and YARN
Apache Ambari: Managing Hadoop and YARNApache Ambari: Managing Hadoop and YARN
Apache Ambari: Managing Hadoop and YARN

Part of the Hortonworks YARN Ready Webinar Series, this session is about management of Apache Hadoop and YARN using Apache Ambari. This series targets developers and we will feature a demo on Ambari.

apache hadoophortonworksyarn ready
Camel oneactivemq posta-final
Camel oneactivemq posta-finalCamel oneactivemq posta-final
Camel oneactivemq posta-final

This document provides an overview of a presentation given at CamelOne 2013 in Boston on June 10-11, 2013 about the internals of Apache ActiveMQ. The presentation covered the major subcomponents of ActiveMQ including transports, the broker core, persistence adapters, and networking brokers. It provided details on architecture, configuration, and implementation of these different aspects of ActiveMQ.

CamelOne 2013	

CamelOne	

STOMP – http://stomp.github.com	

Advantages:	

•  Easy to use text based
protocol	

•  Can use telnet as a client	

•  Defacto standard:	

•  ActiveMQ + Apollo	

•  HornetQ	

•  RabbitMQ	

•  PocoMQ	

•  StompServer	

•  OpenMQ	

•  Many more …	

25	

Disadvantages:	

•  Not as fast as binary
formats
CamelOne 2013	

CamelOne	

But there’s more: WebSockets	

STOMP is a natural wire protocol for WebSockets	

26	

ActiveMQ
Client
(Browser)
WebSocket
Connector
Stomp
Converter
ActiveMQ
(Backend)
TCP
(WebSocket)
HTTP(S)
Request/Response
1. HTTP Request (Upgrade)
2. HTTP Response
4. Message received
from Topic
5. Send WebSocket
Data
3. Stomp Subscribe
CamelOne 2013	

CamelOne	

ActiveMQ: 	

Management
CamelOne 2013	

CamelOne	

Command line:	

•  Activemq	

•  activemq-admin	

•  activemq-admin stop	

•  activemq-admin query	

•  activemq-admin bstat	

•  activemq-admin
browse	

•  activemq-admin list	

28	

Runs the
broker
	

Manages the
broker

Recommended for you

IBM MQ vs Apache ActiveMQ
IBM MQ vs Apache ActiveMQIBM MQ vs Apache ActiveMQ
IBM MQ vs Apache ActiveMQ

Enterprises today are faced with the decision of determining the right messaging solution for their business. Open source solutions provide good base messaging, and can be seen as a low cost entry point. However, when it comes to the need for scalability and performance, IBM MQ is the leading industry messaging solution for your business.

open sourceapache activemqibm mq
Making Apache Camel work for you
Making Apache Camel work for you Making Apache Camel work for you
Making Apache Camel work for you

Apache Camel is eight years old, and some say it's effectiveness as the glue between components has diminished. "Our open source experts say, "Not so!" This is a classic example of older technology not being used to its fullest in favor of the latest and greatest. By walking through little known configuration and optimization tricks to get data flowing reliably and efficiently - even for today's complexity and scale - this session proves that older technology is often still the best solution.

enterprise integration patternsapacheeip
Docker Swarm secrets for creating great FIWARE platforms
Docker Swarm secrets for creating great FIWARE platformsDocker Swarm secrets for creating great FIWARE platforms
Docker Swarm secrets for creating great FIWARE platforms

A presentation on how applying Cloud Architecture Patterns using Docker Swarm as orchestrator is possible to create reliable, resilient and scalable FIWARE platforms.

cloud computingdockerfiware
CamelOne 2013	

CamelOne	

ActiveMQ WebConsole	

http://localhost:8161/admin	

29
CamelOne 2013	

CamelOne	

Introducing hawtio …	

30
CamelOne 2013	

CamelOne	

ActiveMQ: 	

Enterprise
Features
CamelOne 2013	

CamelOne	

High Availability	

ActiveMQ	

Cluster	

ActiveMQ Client	

Supported by both Java and C++ OpenWire clients

Recommended for you

JUDCon2014-ScalableMessagingWithJBossA-MQ and Apache Camel
JUDCon2014-ScalableMessagingWithJBossA-MQ and Apache CamelJUDCon2014-ScalableMessagingWithJBossA-MQ and Apache Camel
JUDCon2014-ScalableMessagingWithJBossA-MQ and Apache Camel

Scalable Messaging is the the need of the enterprise messaging infrastructure. JBossA-MQ is one of the leading products for scalable messaging. It also covers some common concepts beween Apache Active MQ and JBoss A-MQ . Apache Camel as a integration framework supports the enterprise messaging greately and the presentation also contains some of its areas of adjunction to Scalable messaging with queues and topics.

active mqjbosscamel
Mom those things v1
Mom those things v1 Mom those things v1
Mom those things v1

This document discusses message-oriented middleware (MOM). It begins with an introduction to MOM, explaining why it was developed and what it is. Then it covers some common MOM specifications including JMS, AMQP, STOMP, and MQTT. The next section discusses core MOM technologies like transport methods, persistence, and transactions. Advanced features of MOM such as high availability, performance, administration, and plugins are then outlined. Finally, the document briefly introduces alternative messaging technologies like ZeroMQ and cloud messaging before listing references for further information.

mom mq
[OpenStack Days Korea 2016] Track1 - Mellanox CloudX - Acceleration for Cloud...
[OpenStack Days Korea 2016] Track1 - Mellanox CloudX - Acceleration for Cloud...[OpenStack Days Korea 2016] Track1 - Mellanox CloudX - Acceleration for Cloud...
[OpenStack Days Korea 2016] Track1 - Mellanox CloudX - Acceleration for Cloud...

1) Mellanox's CloudX platform enhances cloud performance through technologies like its Spectrum switch, ConnectX-4 adapters, and software solutions. 2) These solutions provide high-speed networking, efficient virtual networking through overlay acceleration, and data transfer technologies like RDMA. 3) CloudX reference architectures allow building efficient, high-performance, and scalable IaaS clouds using Mellanox interconnect solutions and off-the-shelf components.

openstack days koreamellanoxperformance
CamelOne 2013	

CamelOne	

Broker Networks (Store and
Forward)
CamelOne 2013	

CamelOne	

 Network of Brokers : Geographically
Dispersed
CamelOne 2013	

CamelOne	

Network of Brokers : Network with Master/Slave
CamelOne 2013	

CamelOne	

Scaling Networks of Brokers	

•  Brokers share routing information across networks	

•  All destinations are considered Global	

•  This is really convenient	

•  Though it starts to get problematic with 1000’s of
brokers	

•  However – we can do filtering to shape the traffic
across networks 	

•  But this involves a lot of manual configuration 	

36	

 crikey!
	


	


	



Recommended for you

WSO2 Product Release webinar - WSO2 Message Broker 2.2.0
WSO2 Product Release webinar - WSO2 Message Broker 2.2.0WSO2 Product Release webinar - WSO2 Message Broker 2.2.0
WSO2 Product Release webinar - WSO2 Message Broker 2.2.0

This document provides an overview of WSO2 Message Broker 2.2.0. It introduces the presenters, describes WSO2 as a company and what they deliver. It then explains messaging models like queues and topics. The key highlights of WSO2 MB 2.2.0 include improvements to clustering, the addition of a dead letter channel and flow control capabilities. Example use cases are also presented, such as for asynchronous and reliable messaging.

 
by WSO2
wso2 webinars
FIWARE Tech Summit - Docker Swarm Secrets for Creating Great FIWARE Platforms
FIWARE Tech Summit - Docker Swarm Secrets for Creating Great FIWARE PlatformsFIWARE Tech Summit - Docker Swarm Secrets for Creating Great FIWARE Platforms
FIWARE Tech Summit - Docker Swarm Secrets for Creating Great FIWARE Platforms

Presentation by Federico Facca Head of Martel Lab, Martel Innovate FIWARE Tech Summit 28-29 November, 2017 Malaga, Spain

appscontext brokercontext management
Low Latency Mobile Messaging using MQTT
Low Latency Mobile Messaging using MQTTLow Latency Mobile Messaging using MQTT
Low Latency Mobile Messaging using MQTT

This document provides an overview of MQTT (MQ Telemetry Transport), a publish-subscribe based "light weight" messaging protocol that is well suited for mobile and IoT applications. Some key points: - MQTT was designed for connections with remote locations where bandwidth and battery power are limited, such as with mobile apps and sensor devices. - It uses a small amount of bandwidth compared to traditional HTTP, and allows for bi-directional communication between clients and servers using publish/subscribe messaging. - Features include support for different qualities of service, last will and testament messages, and lightweight implementation on constrained devices. - MQTT has been used successfully in large scale mobile apps like Facebook Messenger due to its

mqtt devmobile mobile messaging iphone android jav
CamelOne 2013	

CamelOne	

•  Brokers share routing information across networks	

•  All destinations are considered Global	

•  This is really convenient	

•  Though it starts to get problematic with 1000’s of
brokers	

•  However – we can do filtering to shape the traffic
across networks 	

•  But this involves a lot of manual configuration 	

37	

Time to talk about
Apache Camel …
	

Scaling Networks of Brokers
CamelOne 2013	

CamelOne	

ActiveMQ with embedded Camel	

Service
Consumer
Consumer
ActiveMQ Broker
Flexible and is faster J
CamelOne 2013	

CamelOne	

39	

ActiveMQ with embedded Camel	

beans	

   broker brokerName=testBroker  xmlns=http://activemq.apache.org/schema/core	

    transportConnectors	

      transportConnector uri=tcp://localhost:61616/	

    /transportConnectors	

  /broker	

  import resource=camel.xml/	

/beans	

Import Camel into ActiveMQ broker config:
CamelOne 2013	

CamelOne	

40	

Setup Camel Context in the
usual way	

beans	

…	

camelContext id=camel xmlns=http://camel.apache.org/schema/spring	

route	

	

descriptionExample Camel Route/description	

	

from uri=activemq:topic:audio/	

	

setHeader headerName=JMS_AMQP_MESSAGE_FORMAT	

	

 	

constant0/constant	

	

/setHeader	

	

to uri=activemq:queue:audio/	

/route	

/camelContext	

…	

/beans

Recommended for you

Test Strategy For Future Cloud Architecture
Test Strategy For Future Cloud ArchitectureTest Strategy For Future Cloud Architecture
Test Strategy For Future Cloud Architecture

Great

Cloud-based performance testing
Cloud-based performance testingCloud-based performance testing
Cloud-based performance testing

1. The document discusses using cloud computing for performance testing by provisioning virtual machines and load generation servers in the cloud instead of on-premise servers. 2. Commercial testing products and open-source frameworks like JMeter can be used for cloud-based performance testing, with benefits including lower costs, ability to simulate large-scale loads, and geographic distribution. 3. A case study describes a custom Hailstorm framework built on JMeter that was able to simulate 40,000 concurrent users for a client, providing rapid and cost-effective performance metrics at scale.

productstestingperformance improvement
quickguide-einnovator-3-rabbitmq
quickguide-einnovator-3-rabbitmqquickguide-einnovator-3-rabbitmq
quickguide-einnovator-3-rabbitmq

This document discusses RabbitMQ, an open source message broker implementation of the Advanced Message Queuing Protocol (AMQP). It provides an overview of AMQP and its key mechanisms including message encoding, flow control, queuing, reliability, and security. RabbitMQ is implemented in Erlang and supports client APIs in several languages including Java. The document describes how to install RabbitMQ, connect to it from a Java client, declare exchanges and queues, publish and receive messages, and use request-response patterns. It also covers message properties, acknowledgements, and reliability concepts in RabbitMQ.

CamelOne 2013	

CamelOne	

Scaling Networks – use Apache Camel	

•  Allows for non-chatty networks to be
established 	

•  Routing information can be externalized to
the broker	

•  Successfully used in production for 1000’s
of brokers today	

41
CamelOne 2013	

CamelOne	

More problems
with Large
Deployments
CamelOne 2013	

CamelOne	

 Problems – Deploying and
maintenance	

•  Main problems	

•  Installing brokers on multiple hosts	

•  ssh, untar, set directories and environment	

•  Setting configuration manually for every broker	

•  copying xml config, tweaking, testing	

•  Updating configuration across cluster	

•  Upgrading brokers	

It’s a tedious and error-prone process
CamelOne 2013	

CamelOne	

 Problems – Traditional best-
practice tips	

•  Keep XML as a template and configure node-specific
details through properties	

•  Keep configuration in SVC system (git, svn, ...)	

•  Keep configuration separate from installation for
easier upgrades	

Deployment with Fuse Fabric moves it to the next
level

Recommended for you

OpenMQ Aquarium Paris
OpenMQ Aquarium ParisOpenMQ Aquarium Paris
OpenMQ Aquarium Paris

The document introduces OpenMQ, an open source Java Message Service. It discusses OpenMQ concepts like brokers, clients, and messaging models. It outlines OpenMQ features such as connectivity, scaling, administration, security, and clustering. Clustering options provide various levels of availability. The roadmap discusses upcoming releases codenamed Crane and Phoenix. Selected customer architectures are presented, and more information resources are provided.

mqglassfishopenmq
Enterprise Messaging With ActiveMQ and Spring JMS
Enterprise Messaging With ActiveMQ and Spring JMSEnterprise Messaging With ActiveMQ and Spring JMS
Enterprise Messaging With ActiveMQ and Spring JMS

The document discusses ActiveMQ, an open source message broker. It provides an overview of installing and configuring ActiveMQ, and describes how to use Spring JMS with ActiveMQ for both synchronous and asynchronous messaging. Key ActiveMQ features like persistence, clustering, security, messaging patterns, and consumer options are also summarized.

springjmsactivemq
IBM IMPACT 2014 - AMC-1882 Building a Scalable & Continuously Available IBM M...
IBM IMPACT 2014 - AMC-1882 Building a Scalable & Continuously Available IBM M...IBM IMPACT 2014 - AMC-1882 Building a Scalable & Continuously Available IBM M...
IBM IMPACT 2014 - AMC-1882 Building a Scalable & Continuously Available IBM M...

This document provides an overview of designing a scalable and highly available IBM MQ infrastructure. Key points include: - Using a client/server architecture with MQ deployed separately from applications provides flexibility and allows MQ to be treated as critical infrastructure similar to a database. - Each sender should connect to two queue managers and each receiver should have two listeners concurrently attached to provide redundancy and no single point of failure. - Other topics covered include synchronous request/response, publish/subscribe messaging, limitations for ordered messages, and integrating with IBM Integration Bus. The document emphasizes an active/active design philosophy with minimum two queue managers and discusses workload management strategies for sending and receiving messages across multiple queue managers.

mq architecture topology active ha avaiability hub
CamelOne 2013	

CamelOne	

Problems - Clients	

•  Topology is very “static”	

•  Clients need to be aware of topology	

•  Clients need to know broker locations	

•  Changes are not easy as clients need to be updated	

•  Adding new resources (brokers) requires client updates	

•  Not suitable for “cloud” deployments	

Fuse Fabric makes deployments more “elastic”
CamelOne 2013	

CamelOne	

Fuse Fabric to
the rescue!
CamelOne 2013	

CamelOne	

Fuse Fabric – Key Features	

Fuse	
  IDE	
  	
   hawCo	
  
ActiveMQ	

Cluster	

Camel	

Endpoints	

ServiceMix	

Runtime 	

Registry	

•  Supports Hybrid deployments	

•  Distributed Configuration	

•  Runtime registry	

•  Centralized Management
CamelOne 2013	

CamelOne	

FuseMQ features	

•  mq-base profile	

•  Defines OSGi features and bundles to be installed	

•  Defines basic broker settings	

•  mq-create command	

•  Helper command for creating brokers	

•  Creates an new profile based on mq-base	

•  Optionally creates new containers	

•  Assigns the profile to containers (essentially starts the broker)	

FuseMQ = ActiveMQ deployed in Apache Karaf +

Recommended for you

Connecting applicationswitha mq
Connecting applicationswitha mqConnecting applicationswitha mq
Connecting applicationswitha mq

This document provides an overview of connecting applications with Red Hat JBoss A-MQ. It discusses key features of message-oriented middleware including robustness, time and location independence, latency hiding, scalability, and event-driven communication. It describes messaging concepts like message channels, routing with selectors and wildcards, delivery modes, and features of message brokers. The document focuses on Apache ActiveMQ, covering its use, protocols, persistence storage options, high availability, broker networks, and integration with Apache Camel. It discusses use cases for messaging like the Internet of Things and provides an IoT demo overview using Arduino.

opensource apache activemq camel esb integration
What You Should Know About WebLogic Server 12c (12.2.1.2) #oow2015 #otntour2...
What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2...What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2...
What You Should Know About WebLogic Server 12c (12.2.1.2) #oow2015 #otntour2...

Tech bits about Oracle WebLogic Server 12c. Something more recent: https://www.youtube.com/watch?v=sHCTJNRjdcM

munz & moreweblogicmunz
f2f-overview12.ppt
f2f-overview12.pptf2f-overview12.ppt
f2f-overview12.ppt

The document summarizes an event held to launch the public review of AMQP 1.0, an open internet protocol standard for business messaging. The agenda included introductions to AMQP motivations and use cases, an overview of messaging capabilities, and details on peer-to-peer and organization-to-organization models, security, and management. Breakout sessions allowed attendees to provide feedback. Implementers also presented customer stories to demonstrate AMQP in action. The goal was to get input from outside parties to refine the standard before advancing it to final.

CamelOne 2013	

CamelOne	

 Why is Integration and
Messaging Important ?	

Head Office
Enterprises
Need to
know
Everything!
CamelOne 2013	

CamelOne	

 There are more things to
Integrate with!
CamelOne 2013	

CamelOne	

The Internet of Things	

•  Uniquely identifiable objects and their virtual
representations in an internet-like structure	

•  Originally defined by Kevin Ashton, co-founder of
Auto-ID center at MIT	

•  Today its meaning has evolved to encompass a
world where physical objects are integrated into the
information network, and where physical objects
participate in business processes.	

51
CamelOne 2013	

CamelOne	

Machine to Machine	

•  M2M involves collection and transmission of event
level data (used to be called telemetry) from
intelligent devices	

•  Machines can interact over the net – and/or
attached networks – by wired and wireless
networks	

•  Payloads are typically minimal (temperature,
pressure, location, metering etc.)	

52

Recommended for you

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

The document summarizes an event introducing the AMQP 1.0 public review. It provides an agenda for presentations on AMQP motivations, capabilities, and requirements. AMQP aims to define an open internet protocol standard for ubiquitous business messaging that is safe, reliable, unified, and interoperable across organizations. The event will include technical details of the AMQP model and demonstrations of implementations from various companies. Attendees are invited to provide feedback to help refine the specification.

Integration in the Cloud
Integration in the CloudIntegration in the Cloud
Integration in the Cloud

Apache Camel journey with Microservices, lessons learned and utilisation of Fabric8 to make Docker, Kubernetes and OpenShift easy for developers to use

fabric8kubernetesdocker
Messaging For the Cloud and Microservices
Messaging For the Cloud and MicroservicesMessaging For the Cloud and Microservices
Messaging For the Cloud and Microservices

Utilising messaging in cloud deployments isn't straightforward, particularly if you want to take advantage of auto scaling. This talk covers the general problems of scaling for cloud deployments, and messaging for faster inter-service communication for Microservices

messagingcloud computing
CamelOne 2013	

CamelOne	

Internet of Things	

Time	
  
Connected	
  Devices	
  on	
  the	
  
internet	
  
2010	
  2000	
   2020	
  
1	
  Billion	
  
50	
  Billion	
  
10	
  	
  Billion	
  
Ubiquitous	
  
posiConing	
  –	
  
locaCng	
  people	
  and	
  
everyday	
  objects	
  	
  
RFID	
  tags	
  for	
  
Inventory	
  control	
  
Advanced	
  sensors,	
  
Enterprises	
  fully	
  
connected:	
  integraCon	
  
of	
  everything	
  
Geo-­‐located	
  devices	
  
Microcontrollers	
  
internet	
  enabled	
  
Vending	
  machines,	
  lone	
  
workers,	
  POS,	
  vehicles,	
  
planes,	
  tolls,	
  power	
  
systems,	
  transport,	
  
telemedicine,	
  	
  home	
  
appliances,	
  power	
  
systems,	
  etc.	
  
CamelOne 2013	

CamelOne	

M2M Examples	

•  Smart Energy –	

Smart Grid uses smart meters for monitoring energy uses by premises for billing,
substation and transmission line monitoring, energy production (renewables)	

•  Inventory Control –	

smart labels and RFID tags – connected scanners pass information upstream to
servers for monitoring	

•  In-Vehicle Systems	

Maintenance information, global positioning, ‘black-box’ (speed and driving
habits), wireless payments for tolls/gas	

•  Environmental Monitoring	

Weather stations (temperature, air-pressure), ocean monitors, earth
movements, volcanic activity crop yields etc.	

•  Livestock monitoring	

Cow herds, monitored for optimum time for milking, sheep herds for location	

54
CamelOne 2013	

CamelOne	

M2M Topology	

55	

Gateway	

Hadoop	

	

	

Servers	

Analytics	

Gateway	

Internet	

Mesh Network	

Mobile wireless
CamelOne 2013	

CamelOne	

Power Consumption!	

•  Battery life for mobiles, power consumption for
smart devices is an important consideration.	

•  Facebook use MQTT for real-time updates –
efficiency was one of the things considered	

•  MQTT is more efficient at establishing connections,
sends information more reliably, and consumes less
power to transmit data than HTTP.	

56

Recommended for you

Fabric8 mq
Fabric8 mqFabric8 mq
Fabric8 mq

This document discusses achieving horizontal scaling for enterprise messaging using Fabric8. It provides an introduction to Fabric8 and enterprise messaging concepts. It then describes how Fabric8MQ, which is built on Vert.x, provides horizontal scaling and load balancing for ActiveMQ by implementing features like protocol conversion, Camel routing, API management, multiplexing, and destination sharding across Kubernetes pods and nodes. The document concludes with a demo of Fabric8MQ's capabilities.

mqttfabric8 mqactivemq
Fuse overview
Fuse overviewFuse overview
Fuse overview

This document provides an overview of Red Hat JBoss Fuse, an open source integration platform. It discusses the history and components of JBoss Fuse, including Apache Camel, CXF, ActiveMQ, Karaf and Fabric8. It describes how JBoss Fuse can enable integration everywhere in a real-time enterprise by integrating applications, services, devices and partners through its lightweight footprint and deployment options both on-premise and in the cloud. The document also highlights key benefits of JBoss Fuse such as reducing costs, simplifying management and enabling new business opportunities through greater connectivity and data sharing.

opensource apache activemq camel esb integration
OSGi made simple - Fuse Application Bundles
OSGi made simple - Fuse Application BundlesOSGi made simple - Fuse Application Bundles
OSGi made simple - Fuse Application Bundles

FuseSource introduces Fabric Application Bundles (FABs) which make deploying applications in OSGi containers simpler. FABs allow developers to deploy Java applications packaged with Maven dependencies as single deployment units. When installed, FuseSource's Fuse ESB automatically installs all transitive dependencies of a FAB. This provides an easier deployment model than traditional OSGi bundles while still allowing developers to benefit from OSGi features like dynamic updates and versioning when needed. FABs also provide options for configuring shared dependencies across multiple applications to gain code sharing benefits of OSGi.

opensource osgi apache
CamelOne 2013	

CamelOne	

Deluge of Data	

•  Billions of devices send information will require
storage and processing of terabytes or even
petabytes of data.	

•  Big Data Ingestion: Processing of vast amounts of
data business generates to make good decisions is
only half the problem. Ingesting that data from all
areas of the enterprise will require TBs of data to be
ingested in highly reliable and scalable way. 	

57
CamelOne 2013	

CamelOne	

Need an Eco system of technologies 	

Dev	

•  Integration is getting harder	

•  Traditional message brokers are
key to connect “everything”	

•  Multiple protocols need to be
supported	

•  Camel can provide integration at
the edges – and the data center	

•  Technologies like Fuse Fabric
provide centralized provisioning and
management	

•  Need to mix protocols, brokers and
“message routers” to scale 	

	

	

FuseMQ	

Clusters	

Arrival
Airport 1
CamelOne 2013	

CamelOne	

Demo Time!
CamelOne 2013	

CamelOne	

 Messaging through the Internet of
Things	

	

	

ActiveMQ	

AMQP/MQTT	

routers	

AMQP/MQTT	

routers	

AMQP/MQTT	

routers	

MQTT	
  
MQTT-­‐S	
  
AMQP	
  
AMQP	
  
AMQP	
  
MQTT	
  
MQTT	
  
websockets	
  

Recommended for you

Enterprise Integration Patterns with ActiveMQ
Enterprise Integration Patterns with ActiveMQEnterprise Integration Patterns with ActiveMQ
Enterprise Integration Patterns with ActiveMQ

This document discusses enterprise integration patterns and deployments using Apache ActiveMQ. It provides an overview of key integration concepts like message channels, routing, types of messages, push and pull integration models, request/reply patterns, and job processing. It also covers deployment patterns such as hub and spoke and failover between data centers. Finally, it introduces Apache Camel as a powerful integration framework that supports these patterns and can be used with ActiveMQ.

opensource apache activemq camel esb integration m
How opensourceworks
How opensourceworksHow opensourceworks
How opensourceworks

This document discusses open source software and the Apache Software Foundation (ASF). It provides an overview of the history of open source development including key events and projects. It then describes how individuals and organizations can contribute to Apache projects, the benefits of contributing, and the processes used within the ASF community. The document also explains how FuseSource works with Apache projects, including how FuseSource employees contribute to Apache and how FuseSource packages certified distributions of Apache projects.

Cookies program to display the information though cookie creation
Cookies program to display the information though cookie creationCookies program to display the information though cookie creation
Cookies program to display the information though cookie creation

Java Servlet programs

CamelOne 2013	

CamelOne	

Simplified demo	

Java MQTT Client	

AMQP	
  
MQTT	
  
ActiveMQ	

MQTT/AMQP	

Gateway	

ActiveMQ	

AMQP/OpenWire	

Broker	

 JMS OpenWire Client
CamelOne 2013	

CamelOne	

What is Arduino ?	

•  Open Source Hardware microcontroller	

•  Cheap and easily available.	

•  Open Source Software.	

•  Widespread: many projects.	

•  Extra HW (shields) available (e.g. WiFi shield)
CamelOne 2013	

CamelOne	

63	
  
USB
7-12 v
3 v GRD 5 v Analog Input Pins
Digital Input/Output Pins
Pins with ~ are PWM
[Analog Output]
GRD
Transmitter/Receiver
Serial Connection
Microcontroller ATmega328 	

OperatingVoltage 5V 	

InputVoltage (recommended)7-12V 	

InputVoltage (limits)6-20V 	

Digital I/O Pins 14 	

(of which 6 provide PWM output) 	

Analog Input Pins 6 	

DC Current per I/O Pin 40 mA 	

DC Current for 3.3V Pin 50 mA
CamelOne 2013	

CamelOne	

Arduino Programming	

•  3 types of memory on Arduino	

•  Flash memory (program space) – 32 Kb	

•  SRAM – used by sketches – 2 Kb	

•  EPROM – long term memory – 1 Kb	

•  Programming language based on Wiring: C/C++ library
designed to make input/output easier. Programs are
called sketches.	

•  Arduino has a simple IDE, available on Windows, Linux
and Mac

Recommended for you

Manual | Product | Research Presentation
Manual | Product | Research PresentationManual | Product | Research Presentation
Manual | Product | Research Presentation

Manual Method of Product Research | Helium10 | MBS RETRIEVER

product researchhelium10 | mbs retriever
Quantum Communications Q&A with Gemini LLM
Quantum Communications Q&A with Gemini LLMQuantum Communications Q&A with Gemini LLM
Quantum Communications Q&A with Gemini LLM

Quantum Communications Q&A with Gemini LLM. These are based on Shannon's Noisy channel Theorem and offers how the classical theory applies to the quantum world.

quantum communicationsshannon's channel theoremclassical theory
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...

Jindong Gu, Zhen Han, Shuo Chen, Ahmad Beirami, Bailan He, Gengyuan Zhang, Ruotong Liao, Yao Qin, Volker Tresp, Philip Torr "A Systematic Survey of Prompt Engineering on Vision-Language Foundation Models" arXiv2023 https://arxiv.org/abs/2307.12980

CamelOne 2013	

CamelOne	

Arduino MQTT to WebSockets	

Arduino 	

AMQP	
  
MQTT	
  
ActiveMQ	

MQTT/AMQP	

Gateway	

ActiveMQ	

AMQP/WebSockets	

Broker	

 HTML 5/WebSockets
CamelOne 2013	

CamelOne	

Useful Resources:	

•  http://activemq.apache.org	

•  http://camel.apache.org 	

•  http://fuse.fusesource.org/fabric/docs/overview.html	

•  http://fuse.fusesource.org/mq/docs/mq-fabric.html	

•  https://github.com/fusesource/fuseide	

•  http://hawt.io	

•  http://www.arduino.cc/	

Messaging and
Integration
Developer tooling
Management
Configuration and
provisioning
Arduino

More Related Content

What's hot

Kafka Tutorial - basics of the Kafka streaming platform
Kafka Tutorial - basics of the Kafka streaming platformKafka Tutorial - basics of the Kafka streaming platform
Kafka Tutorial - basics of the Kafka streaming platform
Jean-Paul Azar
 
Integrating microservices with apache camel on kubernetes
Integrating microservices with apache camel on kubernetesIntegrating microservices with apache camel on kubernetes
Integrating microservices with apache camel on kubernetes
Claus Ibsen
 
Integrating systems in the age of Quarkus and Camel
Integrating systems in the age of Quarkus and CamelIntegrating systems in the age of Quarkus and Camel
Integrating systems in the age of Quarkus and Camel
Claus Ibsen
 
Apache Kafka - Martin Podval
Apache Kafka - Martin PodvalApache Kafka - Martin Podval
Apache Kafka - Martin Podval
Martin Podval
 
An Introduction to Gradle for Java Developers
An Introduction to Gradle for Java DevelopersAn Introduction to Gradle for Java Developers
An Introduction to Gradle for Java Developers
Kostas Saidis
 
Apache Camel with Spring boot
Apache Camel with Spring bootApache Camel with Spring boot
Apache Camel with Spring boot
Knoldus Inc.
 
Ansible Playbook
Ansible PlaybookAnsible Playbook
Ansible Playbook
Knoldus Inc.
 
Running Apache NiFi with Apache Spark : Integration Options
Running Apache NiFi with Apache Spark : Integration OptionsRunning Apache NiFi with Apache Spark : Integration Options
Running Apache NiFi with Apache Spark : Integration Options
Timothy Spann
 
Discover Quarkus and GraalVM
Discover Quarkus and GraalVMDiscover Quarkus and GraalVM
Discover Quarkus and GraalVM
Romain Schlick
 
Apache NiFi in the Hadoop Ecosystem
Apache NiFi in the Hadoop Ecosystem Apache NiFi in the Hadoop Ecosystem
Apache NiFi in the Hadoop Ecosystem
DataWorks Summit/Hadoop Summit
 
Lessons Learned Building a Connector Using Kafka Connect (Katherine Stanley &...
Lessons Learned Building a Connector Using Kafka Connect (Katherine Stanley &...Lessons Learned Building a Connector Using Kafka Connect (Katherine Stanley &...
Lessons Learned Building a Connector Using Kafka Connect (Katherine Stanley &...
confluent
 
Room 1 - 7 - Lê Quốc Đạt - Upgrading network of Openstack to SDN with Tungste...
Room 1 - 7 - Lê Quốc Đạt - Upgrading network of Openstack to SDN with Tungste...Room 1 - 7 - Lê Quốc Đạt - Upgrading network of Openstack to SDN with Tungste...
Room 1 - 7 - Lê Quốc Đạt - Upgrading network of Openstack to SDN with Tungste...
Vietnam Open Infrastructure User Group
 
Terraform Basics
Terraform BasicsTerraform Basics
Terraform Basics
Mohammed Fazuluddin
 
Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft...
Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft...Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft...
Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft...
Amazon Web Services
 
Apache NiFi- MiNiFi meetup Slides
Apache NiFi- MiNiFi meetup SlidesApache NiFi- MiNiFi meetup Slides
Apache NiFi- MiNiFi meetup Slides
Isheeta Sanghi
 
Apache web service
Apache web serviceApache web service
Apache web service
Manash Kumar Mondal
 
Apache kafka
Apache kafkaApache kafka
Apache kafka
Ramakrishna kapa
 
Apache Camel Introduction
Apache Camel IntroductionApache Camel Introduction
Apache Camel Introduction
Claus Ibsen
 
Terraform vs Pulumi
Terraform vs PulumiTerraform vs Pulumi
Terraform vs Pulumi
HoaiNam307
 
Apache Ambari: Managing Hadoop and YARN
Apache Ambari: Managing Hadoop and YARNApache Ambari: Managing Hadoop and YARN
Apache Ambari: Managing Hadoop and YARN
Hortonworks
 

What's hot (20)

Kafka Tutorial - basics of the Kafka streaming platform
Kafka Tutorial - basics of the Kafka streaming platformKafka Tutorial - basics of the Kafka streaming platform
Kafka Tutorial - basics of the Kafka streaming platform
 
Integrating microservices with apache camel on kubernetes
Integrating microservices with apache camel on kubernetesIntegrating microservices with apache camel on kubernetes
Integrating microservices with apache camel on kubernetes
 
Integrating systems in the age of Quarkus and Camel
Integrating systems in the age of Quarkus and CamelIntegrating systems in the age of Quarkus and Camel
Integrating systems in the age of Quarkus and Camel
 
Apache Kafka - Martin Podval
Apache Kafka - Martin PodvalApache Kafka - Martin Podval
Apache Kafka - Martin Podval
 
An Introduction to Gradle for Java Developers
An Introduction to Gradle for Java DevelopersAn Introduction to Gradle for Java Developers
An Introduction to Gradle for Java Developers
 
Apache Camel with Spring boot
Apache Camel with Spring bootApache Camel with Spring boot
Apache Camel with Spring boot
 
Ansible Playbook
Ansible PlaybookAnsible Playbook
Ansible Playbook
 
Running Apache NiFi with Apache Spark : Integration Options
Running Apache NiFi with Apache Spark : Integration OptionsRunning Apache NiFi with Apache Spark : Integration Options
Running Apache NiFi with Apache Spark : Integration Options
 
Discover Quarkus and GraalVM
Discover Quarkus and GraalVMDiscover Quarkus and GraalVM
Discover Quarkus and GraalVM
 
Apache NiFi in the Hadoop Ecosystem
Apache NiFi in the Hadoop Ecosystem Apache NiFi in the Hadoop Ecosystem
Apache NiFi in the Hadoop Ecosystem
 
Lessons Learned Building a Connector Using Kafka Connect (Katherine Stanley &...
Lessons Learned Building a Connector Using Kafka Connect (Katherine Stanley &...Lessons Learned Building a Connector Using Kafka Connect (Katherine Stanley &...
Lessons Learned Building a Connector Using Kafka Connect (Katherine Stanley &...
 
Room 1 - 7 - Lê Quốc Đạt - Upgrading network of Openstack to SDN with Tungste...
Room 1 - 7 - Lê Quốc Đạt - Upgrading network of Openstack to SDN with Tungste...Room 1 - 7 - Lê Quốc Đạt - Upgrading network of Openstack to SDN with Tungste...
Room 1 - 7 - Lê Quốc Đạt - Upgrading network of Openstack to SDN with Tungste...
 
Terraform Basics
Terraform BasicsTerraform Basics
Terraform Basics
 
Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft...
Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft...Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft...
Using HashiCorp’s Terraform to build your infrastructure on AWS - Pop-up Loft...
 
Apache NiFi- MiNiFi meetup Slides
Apache NiFi- MiNiFi meetup SlidesApache NiFi- MiNiFi meetup Slides
Apache NiFi- MiNiFi meetup Slides
 
Apache web service
Apache web serviceApache web service
Apache web service
 
Apache kafka
Apache kafkaApache kafka
Apache kafka
 
Apache Camel Introduction
Apache Camel IntroductionApache Camel Introduction
Apache Camel Introduction
 
Terraform vs Pulumi
Terraform vs PulumiTerraform vs Pulumi
Terraform vs Pulumi
 
Apache Ambari: Managing Hadoop and YARN
Apache Ambari: Managing Hadoop and YARNApache Ambari: Managing Hadoop and YARN
Apache Ambari: Managing Hadoop and YARN
 

Similar to Connecting Applications Everywhere with ActiveMQ

Camel oneactivemq posta-final
Camel oneactivemq posta-finalCamel oneactivemq posta-final
Camel oneactivemq posta-final
Christian Posta
 
IBM MQ vs Apache ActiveMQ
IBM MQ vs Apache ActiveMQIBM MQ vs Apache ActiveMQ
IBM MQ vs Apache ActiveMQ
Roman Kharkovski
 
Making Apache Camel work for you
Making Apache Camel work for you Making Apache Camel work for you
Making Apache Camel work for you
Rogue Wave Software
 
Docker Swarm secrets for creating great FIWARE platforms
Docker Swarm secrets for creating great FIWARE platformsDocker Swarm secrets for creating great FIWARE platforms
Docker Swarm secrets for creating great FIWARE platforms
Federico Michele Facca
 
JUDCon2014-ScalableMessagingWithJBossA-MQ and Apache Camel
JUDCon2014-ScalableMessagingWithJBossA-MQ and Apache CamelJUDCon2014-ScalableMessagingWithJBossA-MQ and Apache Camel
JUDCon2014-ScalableMessagingWithJBossA-MQ and Apache Camel
Naveen Raj Balasubramaniam
 
Mom those things v1
Mom those things v1 Mom those things v1
Mom those things v1
von gosling
 
[OpenStack Days Korea 2016] Track1 - Mellanox CloudX - Acceleration for Cloud...
[OpenStack Days Korea 2016] Track1 - Mellanox CloudX - Acceleration for Cloud...[OpenStack Days Korea 2016] Track1 - Mellanox CloudX - Acceleration for Cloud...
[OpenStack Days Korea 2016] Track1 - Mellanox CloudX - Acceleration for Cloud...
OpenStack Korea Community
 
WSO2 Product Release webinar - WSO2 Message Broker 2.2.0
WSO2 Product Release webinar - WSO2 Message Broker 2.2.0WSO2 Product Release webinar - WSO2 Message Broker 2.2.0
WSO2 Product Release webinar - WSO2 Message Broker 2.2.0
WSO2
 
FIWARE Tech Summit - Docker Swarm Secrets for Creating Great FIWARE Platforms
FIWARE Tech Summit - Docker Swarm Secrets for Creating Great FIWARE PlatformsFIWARE Tech Summit - Docker Swarm Secrets for Creating Great FIWARE Platforms
FIWARE Tech Summit - Docker Swarm Secrets for Creating Great FIWARE Platforms
FIWARE
 
Low Latency Mobile Messaging using MQTT
Low Latency Mobile Messaging using MQTTLow Latency Mobile Messaging using MQTT
Low Latency Mobile Messaging using MQTT
Henrik Sjöstrand
 
Test Strategy For Future Cloud Architecture
Test Strategy For Future Cloud ArchitectureTest Strategy For Future Cloud Architecture
Test Strategy For Future Cloud Architecture
MaheshShri1
 
Cloud-based performance testing
Cloud-based performance testingCloud-based performance testing
Cloud-based performance testing
abhinavm
 
quickguide-einnovator-3-rabbitmq
quickguide-einnovator-3-rabbitmqquickguide-einnovator-3-rabbitmq
quickguide-einnovator-3-rabbitmq
jorgesimao71
 
OpenMQ Aquarium Paris
OpenMQ Aquarium ParisOpenMQ Aquarium Paris
OpenMQ Aquarium Paris
Alexis Moussine-Pouchkine
 
Enterprise Messaging With ActiveMQ and Spring JMS
Enterprise Messaging With ActiveMQ and Spring JMSEnterprise Messaging With ActiveMQ and Spring JMS
Enterprise Messaging With ActiveMQ and Spring JMS
Bruce Snyder
 
IBM IMPACT 2014 - AMC-1882 Building a Scalable & Continuously Available IBM M...
IBM IMPACT 2014 - AMC-1882 Building a Scalable & Continuously Available IBM M...IBM IMPACT 2014 - AMC-1882 Building a Scalable & Continuously Available IBM M...
IBM IMPACT 2014 - AMC-1882 Building a Scalable & Continuously Available IBM M...
Peter Broadhurst
 
Connecting applicationswitha mq
Connecting applicationswitha mqConnecting applicationswitha mq
Connecting applicationswitha mq
Rob Davies
 
What You Should Know About WebLogic Server 12c (12.2.1.2) #oow2015 #otntour2...
What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2...What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2...
What You Should Know About WebLogic Server 12c (12.2.1.2) #oow2015 #otntour2...
Frank Munz
 
f2f-overview12.ppt
f2f-overview12.pptf2f-overview12.ppt
f2f-overview12.ppt
wentaozhu3
 
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
ndonikristi98
 

Similar to Connecting Applications Everywhere with ActiveMQ (20)

Camel oneactivemq posta-final
Camel oneactivemq posta-finalCamel oneactivemq posta-final
Camel oneactivemq posta-final
 
IBM MQ vs Apache ActiveMQ
IBM MQ vs Apache ActiveMQIBM MQ vs Apache ActiveMQ
IBM MQ vs Apache ActiveMQ
 
Making Apache Camel work for you
Making Apache Camel work for you Making Apache Camel work for you
Making Apache Camel work for you
 
Docker Swarm secrets for creating great FIWARE platforms
Docker Swarm secrets for creating great FIWARE platformsDocker Swarm secrets for creating great FIWARE platforms
Docker Swarm secrets for creating great FIWARE platforms
 
JUDCon2014-ScalableMessagingWithJBossA-MQ and Apache Camel
JUDCon2014-ScalableMessagingWithJBossA-MQ and Apache CamelJUDCon2014-ScalableMessagingWithJBossA-MQ and Apache Camel
JUDCon2014-ScalableMessagingWithJBossA-MQ and Apache Camel
 
Mom those things v1
Mom those things v1 Mom those things v1
Mom those things v1
 
[OpenStack Days Korea 2016] Track1 - Mellanox CloudX - Acceleration for Cloud...
[OpenStack Days Korea 2016] Track1 - Mellanox CloudX - Acceleration for Cloud...[OpenStack Days Korea 2016] Track1 - Mellanox CloudX - Acceleration for Cloud...
[OpenStack Days Korea 2016] Track1 - Mellanox CloudX - Acceleration for Cloud...
 
WSO2 Product Release webinar - WSO2 Message Broker 2.2.0
WSO2 Product Release webinar - WSO2 Message Broker 2.2.0WSO2 Product Release webinar - WSO2 Message Broker 2.2.0
WSO2 Product Release webinar - WSO2 Message Broker 2.2.0
 
FIWARE Tech Summit - Docker Swarm Secrets for Creating Great FIWARE Platforms
FIWARE Tech Summit - Docker Swarm Secrets for Creating Great FIWARE PlatformsFIWARE Tech Summit - Docker Swarm Secrets for Creating Great FIWARE Platforms
FIWARE Tech Summit - Docker Swarm Secrets for Creating Great FIWARE Platforms
 
Low Latency Mobile Messaging using MQTT
Low Latency Mobile Messaging using MQTTLow Latency Mobile Messaging using MQTT
Low Latency Mobile Messaging using MQTT
 
Test Strategy For Future Cloud Architecture
Test Strategy For Future Cloud ArchitectureTest Strategy For Future Cloud Architecture
Test Strategy For Future Cloud Architecture
 
Cloud-based performance testing
Cloud-based performance testingCloud-based performance testing
Cloud-based performance testing
 
quickguide-einnovator-3-rabbitmq
quickguide-einnovator-3-rabbitmqquickguide-einnovator-3-rabbitmq
quickguide-einnovator-3-rabbitmq
 
OpenMQ Aquarium Paris
OpenMQ Aquarium ParisOpenMQ Aquarium Paris
OpenMQ Aquarium Paris
 
Enterprise Messaging With ActiveMQ and Spring JMS
Enterprise Messaging With ActiveMQ and Spring JMSEnterprise Messaging With ActiveMQ and Spring JMS
Enterprise Messaging With ActiveMQ and Spring JMS
 
IBM IMPACT 2014 - AMC-1882 Building a Scalable & Continuously Available IBM M...
IBM IMPACT 2014 - AMC-1882 Building a Scalable & Continuously Available IBM M...IBM IMPACT 2014 - AMC-1882 Building a Scalable & Continuously Available IBM M...
IBM IMPACT 2014 - AMC-1882 Building a Scalable & Continuously Available IBM M...
 
Connecting applicationswitha mq
Connecting applicationswitha mqConnecting applicationswitha mq
Connecting applicationswitha mq
 
What You Should Know About WebLogic Server 12c (12.2.1.2) #oow2015 #otntour2...
What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2...What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2...
What You Should Know About WebLogic Server 12c (12.2.1.2) #oow2015 #otntour2...
 
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
 

More from Rob Davies

Integration in the Cloud
Integration in the CloudIntegration in the Cloud
Integration in the Cloud
Rob Davies
 
Messaging For the Cloud and Microservices
Messaging For the Cloud and MicroservicesMessaging For the Cloud and Microservices
Messaging For the Cloud and Microservices
Rob Davies
 
Fabric8 mq
Fabric8 mqFabric8 mq
Fabric8 mq
Rob Davies
 
Fuse overview
Fuse overviewFuse overview
Fuse overview
Rob Davies
 
OSGi made simple - Fuse Application Bundles
OSGi made simple - Fuse Application BundlesOSGi made simple - Fuse Application Bundles
OSGi made simple - Fuse Application Bundles
Rob Davies
 
Enterprise Integration Patterns with ActiveMQ
Enterprise Integration Patterns with ActiveMQEnterprise Integration Patterns with ActiveMQ
Enterprise Integration Patterns with ActiveMQ
Rob Davies
 
How opensourceworks
How opensourceworksHow opensourceworks
How opensourceworks
Rob Davies
 

More from Rob Davies (7)

Integration in the Cloud
Integration in the CloudIntegration in the Cloud
Integration in the Cloud
 
Messaging For the Cloud and Microservices
Messaging For the Cloud and MicroservicesMessaging For the Cloud and Microservices
Messaging For the Cloud and Microservices
 
Fabric8 mq
Fabric8 mqFabric8 mq
Fabric8 mq
 
Fuse overview
Fuse overviewFuse overview
Fuse overview
 
OSGi made simple - Fuse Application Bundles
OSGi made simple - Fuse Application BundlesOSGi made simple - Fuse Application Bundles
OSGi made simple - Fuse Application Bundles
 
Enterprise Integration Patterns with ActiveMQ
Enterprise Integration Patterns with ActiveMQEnterprise Integration Patterns with ActiveMQ
Enterprise Integration Patterns with ActiveMQ
 
How opensourceworks
How opensourceworksHow opensourceworks
How opensourceworks
 

Recently uploaded

Cookies program to display the information though cookie creation
Cookies program to display the information though cookie creationCookies program to display the information though cookie creation
Cookies program to display the information though cookie creation
shanthidl1
 
Manual | Product | Research Presentation
Manual | Product | Research PresentationManual | Product | Research Presentation
Manual | Product | Research Presentation
welrejdoall
 
Quantum Communications Q&A with Gemini LLM
Quantum Communications Q&A with Gemini LLMQuantum Communications Q&A with Gemini LLM
Quantum Communications Q&A with Gemini LLM
Vijayananda Mohire
 
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
Toru Tamaki
 
What’s New in Teams Calling, Meetings and Devices May 2024
What’s New in Teams Calling, Meetings and Devices May 2024What’s New in Teams Calling, Meetings and Devices May 2024
What’s New in Teams Calling, Meetings and Devices May 2024
Stephanie Beckett
 
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Bert Blevins
 
Pigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdfPigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdf
Pigging Solutions
 
Best Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdfBest Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdf
Tatiana Al-Chueyr
 
7 Most Powerful Solar Storms in the History of Earth.pdf
7 Most Powerful Solar Storms in the History of Earth.pdf7 Most Powerful Solar Storms in the History of Earth.pdf
7 Most Powerful Solar Storms in the History of Earth.pdf
Enterprise Wired
 
DealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 editionDealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 edition
Yevgen Sysoyev
 
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - MydbopsScaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
Mydbops
 
Recent Advancements in the NIST-JARVIS Infrastructure
Recent Advancements in the NIST-JARVIS InfrastructureRecent Advancements in the NIST-JARVIS Infrastructure
Recent Advancements in the NIST-JARVIS Infrastructure
KAMAL CHOUDHARY
 
20240705 QFM024 Irresponsible AI Reading List June 2024
20240705 QFM024 Irresponsible AI Reading List June 202420240705 QFM024 Irresponsible AI Reading List June 2024
20240705 QFM024 Irresponsible AI Reading List June 2024
Matthew Sinclair
 
Comparison Table of DiskWarrior Alternatives.pdf
Comparison Table of DiskWarrior Alternatives.pdfComparison Table of DiskWarrior Alternatives.pdf
Comparison Table of DiskWarrior Alternatives.pdf
Andrey Yasko
 
Quality Patents: Patents That Stand the Test of Time
Quality Patents: Patents That Stand the Test of TimeQuality Patents: Patents That Stand the Test of Time
Quality Patents: Patents That Stand the Test of Time
Aurora Consulting
 
Coordinate Systems in FME 101 - Webinar Slides
Coordinate Systems in FME 101 - Webinar SlidesCoordinate Systems in FME 101 - Webinar Slides
Coordinate Systems in FME 101 - Webinar Slides
Safe Software
 
Calgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptxCalgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptx
ishalveerrandhawa1
 
Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 2024Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 2024
BookNet Canada
 
BT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdf
BT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdfBT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdf
BT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdf
Neo4j
 
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALLBLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
Liveplex
 

Recently uploaded (20)

Cookies program to display the information though cookie creation
Cookies program to display the information though cookie creationCookies program to display the information though cookie creation
Cookies program to display the information though cookie creation
 
Manual | Product | Research Presentation
Manual | Product | Research PresentationManual | Product | Research Presentation
Manual | Product | Research Presentation
 
Quantum Communications Q&A with Gemini LLM
Quantum Communications Q&A with Gemini LLMQuantum Communications Q&A with Gemini LLM
Quantum Communications Q&A with Gemini LLM
 
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
論文紹介:A Systematic Survey of Prompt Engineering on Vision-Language Foundation ...
 
What’s New in Teams Calling, Meetings and Devices May 2024
What’s New in Teams Calling, Meetings and Devices May 2024What’s New in Teams Calling, Meetings and Devices May 2024
What’s New in Teams Calling, Meetings and Devices May 2024
 
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...
 
Pigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdfPigging Solutions Sustainability brochure.pdf
Pigging Solutions Sustainability brochure.pdf
 
Best Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdfBest Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdf
 
7 Most Powerful Solar Storms in the History of Earth.pdf
7 Most Powerful Solar Storms in the History of Earth.pdf7 Most Powerful Solar Storms in the History of Earth.pdf
7 Most Powerful Solar Storms in the History of Earth.pdf
 
DealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 editionDealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 edition
 
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - MydbopsScaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
 
Recent Advancements in the NIST-JARVIS Infrastructure
Recent Advancements in the NIST-JARVIS InfrastructureRecent Advancements in the NIST-JARVIS Infrastructure
Recent Advancements in the NIST-JARVIS Infrastructure
 
20240705 QFM024 Irresponsible AI Reading List June 2024
20240705 QFM024 Irresponsible AI Reading List June 202420240705 QFM024 Irresponsible AI Reading List June 2024
20240705 QFM024 Irresponsible AI Reading List June 2024
 
Comparison Table of DiskWarrior Alternatives.pdf
Comparison Table of DiskWarrior Alternatives.pdfComparison Table of DiskWarrior Alternatives.pdf
Comparison Table of DiskWarrior Alternatives.pdf
 
Quality Patents: Patents That Stand the Test of Time
Quality Patents: Patents That Stand the Test of TimeQuality Patents: Patents That Stand the Test of Time
Quality Patents: Patents That Stand the Test of Time
 
Coordinate Systems in FME 101 - Webinar Slides
Coordinate Systems in FME 101 - Webinar SlidesCoordinate Systems in FME 101 - Webinar Slides
Coordinate Systems in FME 101 - Webinar Slides
 
Calgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptxCalgary MuleSoft Meetup APM and IDP .pptx
Calgary MuleSoft Meetup APM and IDP .pptx
 
Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 2024Details of description part II: Describing images in practice - Tech Forum 2024
Details of description part II: Describing images in practice - Tech Forum 2024
 
BT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdf
BT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdfBT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdf
BT & Neo4j: Knowledge Graphs for Critical Enterprise Systems.pptx.pdf
 
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALLBLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
BLOCKCHAIN FOR DUMMIES: GUIDEBOOK FOR ALL
 

Connecting Applications Everywhere with ActiveMQ

  • 1. CamelOne 2013 June 10-11 2013 Boston, MA 1 Connecting Applications Everywhere with ActiveMQ Rob Davies Technical Director, Fuse Engineering, Red Hat Inc.
  • 2. CamelOne 2013 CamelOne 2 Rob Davies Technical Director, Red Hat - h"p://www.redhat.com ■  Previously CTO of FuseSource - #1 OS vendor for integration and messaging ■  Software projects: ■  Apache ActiveMQ, ■  Apache Camel ■  Apache ServiceMix ■  On  Expert  Group  for  JSR  343:  JMS  2.0   ■  Co-­‐author  of  AcCveMQ  in  AcCon:  
  • 3. CamelOne 2013 CamelOne Why use Message- Oriented Middleware?   Robustness  to  change     Time  Independence     LocaCon  Independence     Hide  Latency     Scalability     Event  driven     Simplicity     Configurable  Quality  of  Service     PlaRorm  and  Language  IntegraCon     Fault  tolerant    
  • 4. CamelOne 2013 CamelOne 4 What is Apache ActiveMQ ? ■ Top Level Apache Software Foundation Project ■ Wildly popular, high performance, reliable message broker ■ Connects to nearly everything ■ Native Java, C/C++, .Net, ■ AMQP 1.0, MQTT 3.1, STOMP (1.0-1.2) and OpenWire ■ STOMP enables Ruby, JS, Perl, Python, PHP, ActionScript … ■ Embedded and standalone deployment options
  • 6. CamelOne 2013 CamelOne Message Channels and Routing •  Message Channels •  Named communication between interested parties •  JMS calls them ‘Destinations’ •  Can “tune-in” to multiple channels using wildcards •  Can fine-tune message consumption with selectors •  Can route a message based on content
  • 7. CamelOne 2013 CamelOne Message Channels = JMS Destinations Producer Broker Consumer Consumer Consumer Destination WIDGET Destination ORDER
  • 8. CamelOne 2013 CamelOne Point-toPoint Channel: JMS Queues Producer Consumer Consumer Consumer Queue
  • 9. CamelOne 2013 CamelOne Publish/Subscribe Channel: JMS Topics Producer Consumer Consumer Consumer Topic
  • 10. CamelOne 2013 CamelOne Message Routing : Selectors DestinationProducer Consumer color='blue' Consumer color='red'
  • 11. CamelOne 2013 CamelOne Message Routing : Destination Wildcards Topic: BAR.BEER Consumer topic:BAR.> Topic: BAR.WINE Producer
  • 13. CamelOne 2013 CamelOne Message Groups Like Parallel Exclusive Consumers ■ Guaranteed ordering of related messages across a Queue ■ But – load balancing of messages across multiple consumers ■ All messages with the same JMSXGroupID go to the same consumer ■ How you group messages is down to the application’s producer ■ To explicitly close a group, set the JMSXGroupSeq to -1 13
  • 14. CamelOne 2013 CamelOne 14 Message Groups code: Message message = session.createTextMessage("<foo>hi from Devoxx</foo>"); message.setStringProperty("JMSXGroupID", ”RHT_NYSE"); producer.send(message); Message message = session.createTextMessage(foobye from Devoxx/foo); message.setStringProperty(JMSXGroupID, ”RHT_NYSE); message.setStringProperty(JMSXGroupSeq, -1); producer.send(message); //Starting a Group … //Close a Group …
  • 15. CamelOne 2013 CamelOne Deploying ActiveMQ ActiveMQ Can run standalone or embedded ■ As a standalone, or part of a highly available message broker cluster ■ Embedded – easy to use an entire broker in JUnit tests (no need to Mock) ■ In Tomcat, deployed as a war ■ In JEE Server – either co-locate – or use client with JCA ■ ActiveMQ distributions contain a rar for this purpose 15
  • 17. CamelOne 2013 CamelOne Message Delivery Mode •  Messages can be persisted – allowing for decoupled applications •  For Queues, any message delivered as PERSISTENT must be stored on long term storage before being delivered to a consumer •  For Topics, a message delivered as PERSISTENT will only be stored if there exists a durable subscriber •  NON-PERSISTENT messages may also be stored on disk if the memory limits of the broker have been reached 17
  • 18. CamelOne 2013 CamelOne Message stores supported by ActiveMQ ■ SQL (JDBC) ■ SQL (JDBC) with journal ■ AMQ Message Store ■ Kaha ■ KahaDB ■ LevelDB 18 Slow but popular Don’t use (deprecated) The “current” default The “best yet”
  • 19. CamelOne 2013 CamelOne LevelDB Store vs KahaDB •  Fewer index entries per message than KahaDB •  Faster recovery when a broker restarts •  LevelDB index out-perform Btree index at sequential access . •  LevelDB indexes support concurrent read access. •  Pauseless data log file garbage collection cycles. •  Fewer IOPS to load stored messages. •  It exposes it's status via JMX for monitoring
  • 22. CamelOne 2013 CamelOne OpenWire Advantages: •  Fast – optimized for ActiveMQ •  client failover •  automatic reconnect •  Client load balancing •  Flow control •  Many advanced features 22 Disadvantages: •  Not a recognized standard •  Only Java, C/C++/.Net http://activemq.apache.org/openwire.html
  • 23. CamelOne 2013 CamelOne MQTT http://mqtt.org Advantages: •  M2M/”Internet of Things” transport •  Proposed as an OASIS standard •  Extremely light weight •  Growing support from vendors and OS products •  WebSphereMQ •  ActiveMQ + Apollo •  Mosquitto •  RabbitMQ 23 Disadvantages: •  3.1 does not support Queues •  Advanced features not standard •  Flow control •  Failover etc.
  • 24. CamelOne 2013 CamelOne AMQP – see www.amqp.org Advantages: •  AMQP 1.0 OASIS standard •  Proposed as an OASIS standard •  Commoditizes the Broker 24 Disadvantages: •  One size doesn’t really fit all •  Currently no plans for IBM or Tibco to adopt it
  • 25. CamelOne 2013 CamelOne STOMP – http://stomp.github.com Advantages: •  Easy to use text based protocol •  Can use telnet as a client •  Defacto standard: •  ActiveMQ + Apollo •  HornetQ •  RabbitMQ •  PocoMQ •  StompServer •  OpenMQ •  Many more … 25 Disadvantages: •  Not as fast as binary formats
  • 26. CamelOne 2013 CamelOne But there’s more: WebSockets STOMP is a natural wire protocol for WebSockets 26 ActiveMQ Client (Browser) WebSocket Connector Stomp Converter ActiveMQ (Backend) TCP (WebSocket) HTTP(S) Request/Response 1. HTTP Request (Upgrade) 2. HTTP Response 4. Message received from Topic 5. Send WebSocket Data 3. Stomp Subscribe
  • 28. CamelOne 2013 CamelOne Command line: •  Activemq •  activemq-admin •  activemq-admin stop •  activemq-admin query •  activemq-admin bstat •  activemq-admin browse •  activemq-admin list 28 Runs the broker Manages the broker
  • 32. CamelOne 2013 CamelOne High Availability ActiveMQ Cluster ActiveMQ Client Supported by both Java and C++ OpenWire clients
  • 34. CamelOne 2013 CamelOne Network of Brokers : Geographically Dispersed
  • 35. CamelOne 2013 CamelOne Network of Brokers : Network with Master/Slave
  • 36. CamelOne 2013 CamelOne Scaling Networks of Brokers •  Brokers share routing information across networks •  All destinations are considered Global •  This is really convenient •  Though it starts to get problematic with 1000’s of brokers •  However – we can do filtering to shape the traffic across networks •  But this involves a lot of manual configuration 36  crikey!   
  • 37. CamelOne 2013 CamelOne •  Brokers share routing information across networks •  All destinations are considered Global •  This is really convenient •  Though it starts to get problematic with 1000’s of brokers •  However – we can do filtering to shape the traffic across networks •  But this involves a lot of manual configuration 37 Time to talk about Apache Camel … Scaling Networks of Brokers
  • 38. CamelOne 2013 CamelOne ActiveMQ with embedded Camel Service Consumer Consumer ActiveMQ Broker Flexible and is faster J
  • 39. CamelOne 2013 CamelOne 39 ActiveMQ with embedded Camel beans    broker brokerName=testBroker  xmlns=http://activemq.apache.org/schema/core     transportConnectors       transportConnector uri=tcp://localhost:61616/     /transportConnectors   /broker   import resource=camel.xml/ /beans Import Camel into ActiveMQ broker config:
  • 40. CamelOne 2013 CamelOne 40 Setup Camel Context in the usual way beans … camelContext id=camel xmlns=http://camel.apache.org/schema/spring route descriptionExample Camel Route/description from uri=activemq:topic:audio/ setHeader headerName=JMS_AMQP_MESSAGE_FORMAT constant0/constant /setHeader to uri=activemq:queue:audio/ /route /camelContext … /beans
  • 41. CamelOne 2013 CamelOne Scaling Networks – use Apache Camel •  Allows for non-chatty networks to be established •  Routing information can be externalized to the broker •  Successfully used in production for 1000’s of brokers today 41
  • 43. CamelOne 2013 CamelOne Problems – Deploying and maintenance •  Main problems •  Installing brokers on multiple hosts •  ssh, untar, set directories and environment •  Setting configuration manually for every broker •  copying xml config, tweaking, testing •  Updating configuration across cluster •  Upgrading brokers It’s a tedious and error-prone process
  • 44. CamelOne 2013 CamelOne Problems – Traditional best- practice tips •  Keep XML as a template and configure node-specific details through properties •  Keep configuration in SVC system (git, svn, ...) •  Keep configuration separate from installation for easier upgrades Deployment with Fuse Fabric moves it to the next level
  • 45. CamelOne 2013 CamelOne Problems - Clients •  Topology is very “static” •  Clients need to be aware of topology •  Clients need to know broker locations •  Changes are not easy as clients need to be updated •  Adding new resources (brokers) requires client updates •  Not suitable for “cloud” deployments Fuse Fabric makes deployments more “elastic”
  • 47. CamelOne 2013 CamelOne Fuse Fabric – Key Features Fuse  IDE     hawCo   ActiveMQ Cluster Camel Endpoints ServiceMix Runtime Registry •  Supports Hybrid deployments •  Distributed Configuration •  Runtime registry •  Centralized Management
  • 48. CamelOne 2013 CamelOne FuseMQ features •  mq-base profile •  Defines OSGi features and bundles to be installed •  Defines basic broker settings •  mq-create command •  Helper command for creating brokers •  Creates an new profile based on mq-base •  Optionally creates new containers •  Assigns the profile to containers (essentially starts the broker) FuseMQ = ActiveMQ deployed in Apache Karaf +
  • 49. CamelOne 2013 CamelOne Why is Integration and Messaging Important ? Head Office Enterprises Need to know Everything!
  • 50. CamelOne 2013 CamelOne There are more things to Integrate with!
  • 51. CamelOne 2013 CamelOne The Internet of Things •  Uniquely identifiable objects and their virtual representations in an internet-like structure •  Originally defined by Kevin Ashton, co-founder of Auto-ID center at MIT •  Today its meaning has evolved to encompass a world where physical objects are integrated into the information network, and where physical objects participate in business processes. 51
  • 52. CamelOne 2013 CamelOne Machine to Machine •  M2M involves collection and transmission of event level data (used to be called telemetry) from intelligent devices •  Machines can interact over the net – and/or attached networks – by wired and wireless networks •  Payloads are typically minimal (temperature, pressure, location, metering etc.) 52
  • 53. CamelOne 2013 CamelOne Internet of Things Time   Connected  Devices  on  the   internet   2010  2000   2020   1  Billion   50  Billion   10    Billion   Ubiquitous   posiConing  –   locaCng  people  and   everyday  objects     RFID  tags  for   Inventory  control   Advanced  sensors,   Enterprises  fully   connected:  integraCon   of  everything   Geo-­‐located  devices   Microcontrollers   internet  enabled   Vending  machines,  lone   workers,  POS,  vehicles,   planes,  tolls,  power   systems,  transport,   telemedicine,    home   appliances,  power   systems,  etc.  
  • 54. CamelOne 2013 CamelOne M2M Examples •  Smart Energy – Smart Grid uses smart meters for monitoring energy uses by premises for billing, substation and transmission line monitoring, energy production (renewables) •  Inventory Control – smart labels and RFID tags – connected scanners pass information upstream to servers for monitoring •  In-Vehicle Systems Maintenance information, global positioning, ‘black-box’ (speed and driving habits), wireless payments for tolls/gas •  Environmental Monitoring Weather stations (temperature, air-pressure), ocean monitors, earth movements, volcanic activity crop yields etc. •  Livestock monitoring Cow herds, monitored for optimum time for milking, sheep herds for location 54
  • 56. CamelOne 2013 CamelOne Power Consumption! •  Battery life for mobiles, power consumption for smart devices is an important consideration. •  Facebook use MQTT for real-time updates – efficiency was one of the things considered •  MQTT is more efficient at establishing connections, sends information more reliably, and consumes less power to transmit data than HTTP. 56
  • 57. CamelOne 2013 CamelOne Deluge of Data •  Billions of devices send information will require storage and processing of terabytes or even petabytes of data. •  Big Data Ingestion: Processing of vast amounts of data business generates to make good decisions is only half the problem. Ingesting that data from all areas of the enterprise will require TBs of data to be ingested in highly reliable and scalable way. 57
  • 58. CamelOne 2013 CamelOne Need an Eco system of technologies Dev •  Integration is getting harder •  Traditional message brokers are key to connect “everything” •  Multiple protocols need to be supported •  Camel can provide integration at the edges – and the data center •  Technologies like Fuse Fabric provide centralized provisioning and management •  Need to mix protocols, brokers and “message routers” to scale FuseMQ Clusters Arrival Airport 1
  • 60. CamelOne 2013 CamelOne Messaging through the Internet of Things ActiveMQ AMQP/MQTT routers AMQP/MQTT routers AMQP/MQTT routers MQTT   MQTT-­‐S   AMQP   AMQP   AMQP   MQTT   MQTT   websockets  
  • 61. CamelOne 2013 CamelOne Simplified demo Java MQTT Client AMQP   MQTT   ActiveMQ MQTT/AMQP Gateway ActiveMQ AMQP/OpenWire Broker JMS OpenWire Client
  • 62. CamelOne 2013 CamelOne What is Arduino ? •  Open Source Hardware microcontroller •  Cheap and easily available. •  Open Source Software. •  Widespread: many projects. •  Extra HW (shields) available (e.g. WiFi shield)
  • 63. CamelOne 2013 CamelOne 63   USB 7-12 v 3 v GRD 5 v Analog Input Pins Digital Input/Output Pins Pins with ~ are PWM [Analog Output] GRD Transmitter/Receiver Serial Connection Microcontroller ATmega328 OperatingVoltage 5V InputVoltage (recommended)7-12V InputVoltage (limits)6-20V Digital I/O Pins 14 (of which 6 provide PWM output) Analog Input Pins 6 DC Current per I/O Pin 40 mA DC Current for 3.3V Pin 50 mA
  • 64. CamelOne 2013 CamelOne Arduino Programming •  3 types of memory on Arduino •  Flash memory (program space) – 32 Kb •  SRAM – used by sketches – 2 Kb •  EPROM – long term memory – 1 Kb •  Programming language based on Wiring: C/C++ library designed to make input/output easier. Programs are called sketches. •  Arduino has a simple IDE, available on Windows, Linux and Mac
  • 65. CamelOne 2013 CamelOne Arduino MQTT to WebSockets Arduino AMQP   MQTT   ActiveMQ MQTT/AMQP Gateway ActiveMQ AMQP/WebSockets Broker HTML 5/WebSockets
  • 66. CamelOne 2013 CamelOne Useful Resources: •  http://activemq.apache.org •  http://camel.apache.org •  http://fuse.fusesource.org/fabric/docs/overview.html •  http://fuse.fusesource.org/mq/docs/mq-fabric.html •  https://github.com/fusesource/fuseide •  http://hawt.io •  http://www.arduino.cc/ Messaging and Integration Developer tooling Management Configuration and provisioning Arduino