Enviar pesquisa
Carregar
Apache ActiveMQ, Camel, CXF and ServiceMix Overview
•
14 gostaram
•
6,044 visualizações
Marcelo Jabali
Seguir
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 41
Baixar agora
Baixar para ler offline
Recomendados
Service-Oriented Integration With Apache ServiceMix
Service-Oriented Integration With Apache ServiceMix
Bruce Snyder
Introduction to Apache Camel
Introduction to Apache Camel
Claus Ibsen
HTML5 WebSocket Introduction
HTML5 WebSocket Introduction
Marcelo Jabali
Apache ActiveMQ, Camel, CXF e ServiceMix Overview - Portugues
Apache ActiveMQ, Camel, CXF e ServiceMix Overview - Portugues
Marcelo Jabali
Apache camel overview dec 2011
Apache camel overview dec 2011
Marcelo Jabali
2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
Marius Sescu
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
Expeed Software
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
Pixeldarts
Recomendados
Service-Oriented Integration With Apache ServiceMix
Service-Oriented Integration With Apache ServiceMix
Bruce Snyder
Introduction to Apache Camel
Introduction to Apache Camel
Claus Ibsen
HTML5 WebSocket Introduction
HTML5 WebSocket Introduction
Marcelo Jabali
Apache ActiveMQ, Camel, CXF e ServiceMix Overview - Portugues
Apache ActiveMQ, Camel, CXF e ServiceMix Overview - Portugues
Marcelo Jabali
Apache camel overview dec 2011
Apache camel overview dec 2011
Marcelo Jabali
2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
Marius Sescu
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
Expeed Software
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
Pixeldarts
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
LoriGlavin3
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
LoriGlavin3
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
Curtis Poe
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
panagenda
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Mark Goldstein
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
itnewsafrica
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
panagenda
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
Bernd Ruecker
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
LoriGlavin3
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
itnewsafrica
2024 April Patch Tuesday
2024 April Patch Tuesday
Ivanti
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
Nathaniel Shimoni
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
LoriGlavin3
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Pim van der Noll
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
Mydbops
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
Knoldus Inc.
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
IES VE
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
itnewsafrica
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
Neo4j
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App Framework
Pixlogix Infotech
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
ThinkNow
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
marketingartwork
Mais conteúdo relacionado
Último
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
LoriGlavin3
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
LoriGlavin3
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
Curtis Poe
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
panagenda
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Mark Goldstein
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
itnewsafrica
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
panagenda
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
Bernd Ruecker
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
LoriGlavin3
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
itnewsafrica
2024 April Patch Tuesday
2024 April Patch Tuesday
Ivanti
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
Nathaniel Shimoni
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
LoriGlavin3
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Pim van der Noll
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
Mydbops
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
Knoldus Inc.
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
IES VE
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
itnewsafrica
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
Neo4j
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App Framework
Pixlogix Infotech
Último
(20)
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
2024 April Patch Tuesday
2024 April Patch Tuesday
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App Framework
Destaque
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
ThinkNow
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
marketingartwork
Skeleton Culture Code
Skeleton Culture Code
Skeleton Technologies
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
Neil Kimberley
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
contently
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
Albert Qian
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
Search Engine Journal
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
SpeakerHub
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
Clark Boyd
Getting into the tech field. what next
Getting into the tech field. what next
Tessa Mero
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Lily Ray
How to have difficult conversations
How to have difficult conversations
Rajiv Jayarajah, MAppComm, ACC
Introduction to Data Science
Introduction to Data Science
Christy Abraham Joy
Time Management & Productivity - Best Practices
Time Management & Productivity - Best Practices
Vit Horky
The six step guide to practical project management
The six step guide to practical project management
MindGenius
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
RachelPearson36
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Applitools
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
GetSmarter
ChatGPT webinar slides
ChatGPT webinar slides
Alireza Esmikhani
Destaque
(20)
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
Skeleton Culture Code
Skeleton Culture Code
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
Getting into the tech field. what next
Getting into the tech field. what next
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
How to have difficult conversations
How to have difficult conversations
Introduction to Data Science
Introduction to Data Science
Time Management & Productivity - Best Practices
Time Management & Productivity - Best Practices
The six step guide to practical project management
The six step guide to practical project management
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
ChatGPT webinar slides
ChatGPT webinar slides
Apache ActiveMQ, Camel, CXF and ServiceMix Overview
1.
Apache Ac6veMQ, Camel,
CXF & ServiceMix Overview Open Source Integra6on and Messaging Marcelo Jabali Sr. Solutions Consultant Sep., 2011 A Progress So3ware Company 1 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
2.
Agenda
§ Apache Ac6veMQ § Apache Camel § Apache CXF § Apache ServiceMix § FuseSource Overview 2 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
3.
About Me
Marcelo Jabali FuseSource marcelo@fusesource.com marcelojabali.blogspot.com mjabali 3 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
4.
Apache Ac6veMQ
§ A high performance, reliable messaging fabric, suppor6ng JMS, C, .Net, and other frameworks. Clients connect to the broker using Network connectors with connectors control simple URIs how the broker interacts with other brokers for discovery, replication, Topics and queues failover, clustering created and store & dynamically. forward. … all based on a flexible Spring- File & JDBC-based based core. message stores supported. 4 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
5.
JMS Fundamentals
Broker <<Application>> <<Application>> :JMSClient Produce Consume :JMSClient message Destination message Producer Consumer § The JMS specifica6on defines a set of Java interfaces and seman6cs for inter-‐applica6on messaging § JMS defines two messaging models: • Point-to-point (PTP) • Publish and Subscribe (Pub/Sub) 5 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
6.
Point-‐to-‐Point Messaging Model
Broker Client A Queue Produce Consume Client B message message § With the Point-to-Point messaging model: • Each message has only one and only consumer. • There are no timing dependencies; consumers do not have to be connected at the time the message is sent. § PTP is ideal for processing business transactions. 6 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
7.
Publish and Subscribe
Messaging Model Client B Broker Client A Topic Client C Produce Consume message message Client D § With the Pub/Sub messaging model: • One message goes to zero-to-many consumers based on the number of current subscribers • Subscribers with an active subscription at the time the broker gets the message receive a copy of the message • Subscribers can be durable or non-durable § Pub/Sub is ideal for publishing business events. 7 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
8.
JMS Classes and
Interfaces § These are the classes and interfaces that you use to program the JMS client applica6on 8 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
9.
JMS Messages
§ Messages form the basic unit of work of a message provider § They are simple and flexible § Basic components of a message: • Header (JMSDes6na6on, JMSDeliveryMode, JMSExpira6on, etc) • Proper6es (op6onal) – User-‐defined proper6es • Body (op6onal) 9 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
10.
Ac6veMQ Enhancements to
JMS § Ac6veMQ Connec6on Factory segngs • disableTimeStampByDefault, copyMessageOnSend, useCompression, objectMessageSerializa6onDefered, useAsyncSend, useRetroac6veConsumer § Des6na6ons are typically created on demand • They can also be created at the broker startup § Retroac6ve Consumers • Last Image, Fixed Count or Fixed Size § Des6na6on Policies • Dispatch policies – load balance consumers/producers across destinations. • Recovery Policies – recover messages/subscriptions. • Pre-fetch policies – acknowledge messages sent to consumers in batches. 10 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
11.
Ac6veMQ Enhancements to
JMS (cont.) § Advisory Channels • Starting and stopping consumers and producers • Creating and destroying temporary destinations • Expiring messages on topics and queues • Sending messages from brokers to destinations with no consumers • Starting and stopping connections § Exclusive Consumer Priority § Message Groups § Composite & Virtual Des6na6ons • Forward, Route & High-‐Available Load-‐Balanced Durable Subscribers 11 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
12.
What are Network
of Brokers? § In basic deployments, producers and consumers connect to the same broker to exchange messages § With broker networks, messages not consumed locally are forwarded broker-to-broker and dispatched to remote clients. • The message can travel through multiple brokers before it is consumed • Each message is owned by a single broker at any point in time. § Broker networks allow you to scale your deployment by: • Accommodating many more clients, e.g. when the number of sockets is limited by the OS • Increasing message throughput because messages are load- balanced across all interested consumers. • Distributing consumers and producers geographically across a WAN, firewall or other bridges 12 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
13.
Network of Brokers
-‐ Example P A C C B C § Brokers A, B and C are part of a broker network § There is a producer to a queue on broker A and consumers from the queue on brokers A and B § Messages sent to the queue are dispatched to consumers on A and B; messages are not forwarded to C • If a consumer from the queue starts on C, messages will flow there as well 13 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
14.
Replica6on, Clustering &
Failover Broker replication Shared message store <<jvm>> <<jvm>> frodo:ActiveMQ frodo:ActiveMQ Master state Brokers replicated to compete for slave using file system or network database connector. lock. <<jvm>> <<jvm>> samwise:ActiveMQ samwise:ActiveMQ 14 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
15.
Networks Of Master-‐Slave
Pairs § A clustered, highly available approach <<jvm>> <<jvm>> <<jvm>> frodo:ActiveMQ gandalf:ActiveMQ merry:ActiveMQ Master Slave <<jvm>> <<jvm>> <<jvm>> samwise:ActiveMQ saruman:ActiveMQ pip:ActiveMQ 15 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
16.
Apache Camel
§ Apache Camel is a powerful Open Source Integra6on Framework based on known Enterprise Integra6on Paqerns http://enterpriseintegrationpatterns.com/ 16 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
17.
Apache Camel -‐
Paqerns § 50+ Enterprise Integra6on Paqerns http://camel.apache.org/eip 17 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
18.
Apache Camel –
Components, Data Formats and Languages § 80 Components (ac6vemq, bean, cxf, file, 3p, hibernate, jdbc, iba6s, jms, jeqy, mina, neqy, 6mer, xslt, etc) • http://camel.apache.org/components.html § 19 Data Formats (csv, serializa6on, zip, hl7, soap, jaxb, etc) • http://camel.apache.org/data-format.html § 15 Expression Languages (EL, Simple, XQuery, Xpath, JavaScript, Ruby, Python, PHP, etc) • http://camel.apache.org/languages.html 18 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
19.
Apache Camel -‐
Architecture Camel can be deployed in a wide An endpoint is a Container variety of container message source types or sink Camel context Endpoints The Camel context is an instance of the Camel runtime environment Components A component is a plug-in endpoint factory; Camel provides a wide variety of components 19 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
20.
Apache Camel
§ Camel provides an embedded DSL (in Java, Spring or Scala) for implemen6ng enterprise integra6on paqerns • The DSL uses URIs to define endpoints which are combined to generate integra6on flows 20 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
21.
Apache Camel
§ Camel Content-‐Based Router -‐ Spring DSL <camelContext> <route> <from uri="activemq:queue:NewOrders"/> <choice> <when> <xpath>/order/product = 'widget'</xpath> <to uri="activemq:Orders.Widgets"/> </when> <otherwise> <to uri="activemq:Orders.Gadgets"/> </otherwise> </choice> </route> </camelContext> 21 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
22.
Apache Camel
§ Camel Content-‐Based Router -‐ Java DSL from("activemq:queue:NewOrders") .choice() .when().xpath("/order/product = 'widget'") .to("activemq:Orders.Widget") .otherwise() .to("activemq:Orders.Gadget"); 22 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
23.
Typical Camel Route
Development Process § Use a Maven archetype to generate an outline project § Edit the POM to include additional dependencies § Add your Java code into src/main/java, and/or Spring configuration to src/main/resources/META-INF/spring § Add instructions to the Maven Felix plugin, to assist in the generation of OSGi manifest information § Test using the Camel Maven plugin mvn camel:run § Deploy into the Apache ServiceMix OSGi container • Drop into deploy/ directory (pre-production testing) • Install a bundle/feature from a maven repository (production environment) 23 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
24.
Apache Camel -‐
Example § Goals • Pickup files from a directory • Make sure we only pickup 3 files per 30 seconds • Store into JMS queue • Listen on JMS queue • And upload file to FTP server 24 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
25.
Apache Camel –
Example § Camel Route Spring XML DSL <camelContext> <route> <from uri="file:camellos/inbox?move=.done"/> <throttle maximumRequestsPerPeriod="3" timePeriodMillis="30000”> <to uri="activemq:queue:camellos"/> </throttle> </route> <route> <from uri="activemq:queue:camellos"/> <to uri="ftp://admin:secret@localhost:3333"/> </route> </camelContext> 25 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
26.
Apache CXF
§ Apache CXF is an open-source Java service framework § Full implementation of the JAX-WS 2.0 specification, radically simplifying the process of exposing existing Java code as a Web service or writing new Web services. § Provides design-time tools and runtime infrastructure that are technology-neutral. § Designed to work with variety of container servers, languages, and messaging systems § Originally named Celtix and later moved to Apache where it was merged with the Xfire project 26 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
27.
Building Applica6ons with
CXF § CXF abstracts away the details of inter-process communication between services and consumers. • … allows developers to focus efforts on business logic rather than integration logic. § CXF supports code-first and contract-first approaches: • Expose “plain old Java objects” (POJOs) as a services, or • Explicitly annotate Java classes, or • Start with a WSDL contract. § Use CXF to develop both client- and server-side components. • Deploy as standalone Java applications, or easily integrate into a Spring-based application 27 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
28.
Apache CXF -‐
Architecture § CXF provides a layered communication stack to services and consumers 28 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
29.
Apache CXF -‐
Architecture § When a component sends a message to a service, it uses a Java API derived from the WSDL contract • The JAX-WS mapping is used. • The Java API is protocol neutral. § A CXF binding creates the message payload • Pure XML, SOAP, JSON, or some other message format. § Quality-of-service extensions can be added using message interceptors • CXF supports a number of Web Services QoS standards. § CXF then transmits the message using a transport. • CXF includes HTTP, JMS, and AMQP out-of-the-box. • You can write custom transports for CXF; for example: TCP, SMTP, FTP 29 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
30.
CXF Deployment Model
§ CXF can also be deployed in a number of different container technologies: • In a Servlet engine (e.g. Tomcat) • In a J2EE container (using bi-directional JCA) (e.g. JBOSS) • In a JBI (Java Business Integration) container (e.g. ServiceMix) • In an OSGi container (e.g. ServiceMix) • Stand-alone JVM (e.g. java –jar myapp.jar) § This flexible deployment approach allows you to deploy your CXF service-oriented components anywhere 30 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
31.
Apache ServiceMix
§ Full open source implementation of an Enterprise Service Bus • Based on OSGi technology (http://www.osgi.org) § Support for multiple component models • OSGi bundles • JBI artifacts • Servlets • Spring beans • Camel routes (http://camel.apache.org) • CXF web services and RESTful services (http:// cxf.apache.org) • Extensible to support additional component models, such as EJB 31 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
32.
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 32 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
33.
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 33 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
34.
Apache ServiceMix –
Technology Layer Features § Spring Framework • ServiceMix loads an OSGi bundle into its runtime, or generates an OSGi bundle on the fly, and then instantiates the Spring application context § JMS Message Broker • ServiceMix deploys the Apache ActiveMQ broker (OSGi-ready) § JAX-WS/JAX-RS Web Services support • ServiceMix deploys the Apache CXF runtime (OSGi-ready) § Enterprise Integration Patterns (EIP) support • ServiceMix deploys the Apache Camel runtime (OSGi-ready) § 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 § Can be extended to support technologies such as SCA or EJB3 34 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
35.
Apache ServiceMix –
Deployment Model § When you deploy a ServiceMix solution, you typically deploy the core (Karaf) plus one or more technology components § Examples: • 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 35 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
36.
FuseSource Corpora6on The
Leaders in Open Source Integra9on and Messaging Produc9zed distribu9ons • Integrated Team behind the projects • Tested • Leaders at Apache • Tooling • Product roadmaps • Code contribu9ons Enterprise support • Subscrip9ons • Training • Consul9ng 36 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
37.
FuseSource Subscrip6on :
Cer6fied Distribu6ons Fuse ESB (ServiceMix), Fuse Message Broker (Ac9veMQ), Fuse Media9on Router (Camel), Fuse Services Framework (CXF) • Tested – integrated tests on supported plasorms • Produc6zed distribu6ons – versioned, supported releases • Freely available with Apache license (can edit code and redistribute) • Enterprise-‐class distribu6ons of popular apache projects 37 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
38.
Forrester Wave Report
Q2 2011: Fuse ESB is a “Leader” § FuseSource placed in “Leader” category in company with large, established vendors § One of few open source solu6ons considered for this report § Highest ranked open source solu6on 38 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
39.
FuseSource : Team
that Wrote the Code No one knows the code, or influences the projects at Apache more than FuseSource: • Co-‐founders and PMC members of ServiceMix, Ac6veMQ, Camel, … • Over 25 ac6ve commiqers on 11 Apache projects Guillaume Nodet James Strachan Rob Davis Hiram Chirino Dejan Gert Jon Anstey Gary Tully Willem Jiang Claus Ibsen Bosanac Vanthienen 39 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
40.
FuseSource Subscrip6on =
Long Term Success Support • Enterprise-‐class 24x7 coverage • Global organiza6on • Mission-‐cri6cal Influence integra6on exper6se • Product roadmaps • Updates and migra6on • Planning processes assistance • Conduit to Apache Tools • Development • Opera6ons • Management • Performance • Documenta6on 40 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
41.
Thanks! No vendor
lock-‐in Free to redistribute Enterprise class A Progress So3ware Company 41 Copyright © 2011 Progress So3ware Corpora6on and/or its subsidiaries or affiliates. All rights reserved. A Progress So3ware Company
Baixar agora