This lecture will give an introduction of SOA, giving an background of history and an overview of its specifications. How does Service Component Architecture (SCA, which is an open source standard) can help you to create services that can exposed by an Enterprise Service Bus (ESB). The SwitchYard implement SCA specification and also bring integration of many features you have available at WildFly application server. It also aims to simplify the integration with its built-in tools (like IDE) and components. You might surprise yourself with the Open Source power.
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Getting Started with SOA using SwitchYard
1. Getting Started with SOA using
SwitchYard
Luan Cestari
@BR_LuanCestari
http://slidesha.re/1mAJc1a
2. Ressalva/Disclaimer
●
ESTA APRESENTAÇÃO REFLETE A OPINIÕES E PROPOSTAS PESSOAIS DO AUTOR SOBRE
O TEMA, PODENDO NÃO REFLETIR NECESSARIAMENTE A OPINIÂO / PONTO DE VISTA DE
QUAISQUER ORGANIZAÇÃO/EMPRESA LIGA OU NÃO COM O AUTOR
● THIS PRESENTATION REFLECTS AUTHOR'S PERSONAL OPINIONS AND IDEAS ON THE
TOPIC AND MAY NOT REFLECT NECESSARILY THE OPINION/ VIEWPOINT OF ANY
ORGANIZATION / COMPANY WITH/WITHOUT RELATIONSHIP WITH THE AUTHOR.
Getting Started with SOA using SwitchYard
http://slidesha.re/1mAJc1a@BR_LuanCestari
3. Introduction
● Who works using
– EIP (integration between systems)?
– SOAP?
– A SOA platform? Which one?
http://slidesha.re/1mAJc1aGetting Started with SOA using SwitchYard
@BR_LuanCestari
4. Agenda
● What we are going to see
● What we are not going to see
http://slidesha.re/1mAJc1aGetting Started with SOA using SwitchYard
@BR_LuanCestari
5. What is SOA?
● ESB?
● (Web) Services?
● None
http://slidesha.re/1mAJc1aGetting Started with SOA using SwitchYard
@BR_LuanCestari
6. History
● From 60's to nowadays
– IBM Mainframes tapes in the 60's
– 1969 ARPANET
– 1975 TCP/IP
– 80's personal computer, 90's is the big internet
growth
http://slidesha.re/1mAJc1aGetting Started with SOA using SwitchYard
@BR_LuanCestari
7. History
● From 60's to nowadays
– 2000 SOAP
– 2003 Gatner created the term SOA
– 2007 OASIS created SCA
http://slidesha.re/1mAJc1aGetting Started with SOA using SwitchYard
@BR_LuanCestari
8. When we have to build a new
system
http://slidesha.re/1mAJc1aGetting Started with SOA using SwitchYard
@BR_LuanCestari
9. ... and now we have
● Server
● Mainframe
● Desktop Client
● Web
● Mobile
● Cloud
● Big Data
● Legacy, DB, etc
http://slidesha.re/1mAJc1aGetting Started with SOA using SwitchYard
@BR_LuanCestari
10. And also the other old systems
http://slidesha.re/1mAJc1aGetting Started with SOA using SwitchYard
@BR_LuanCestari
11. That reminds: The Tower of Babel
http://slidesha.re/1mAJc1aGetting Started with SOA using SwitchYard
@BR_LuanCestari
12. Why all that? Because today
http://slidesha.re/1mAJc1aGetting Started with SOA using SwitchYard
@BR_LuanCestari
13. Is not the same as tomorrow
http://slidesha.re/1mAJc1aGetting Started with SOA using SwitchYard
@BR_LuanCestari
14. Business want this always
http://slidesha.re/1mAJc1aGetting Started with SOA using SwitchYard
@BR_LuanCestari
15. How to solve this?
http://slidesha.re/1mAJc1aGetting Started with SOA using SwitchYard
@BR_LuanCestari
16. Poor Architecture leads to
http://slidesha.re/1mAJc1aGetting Started with SOA using SwitchYard
@BR_LuanCestari
● Hard to maintain
● Features doesn't archive business
requirements on time
● Developers waste too much time due the
complexity
● Hard to monitor, hard to test, etc
18. So, what is SOA
● Very broad topic, but let's simplify it here
● SOA = technology architecture + development
methodology
● It is:Business-Driven, Vendor-Neutral &
Composition-Centric
http://slidesha.re/1mAJc1aGetting Started with SOA using SwitchYard
@BR_LuanCestari
19. So, what is SOA
● It can be related with many technologies
– SOAP, Rest, BPEL, UDDI, etc
● And groups
– OASIS
● https://www.oasis-open.org/standards
● https://www.oasis-open.org/committees/
– The Open Group
http://slidesha.re/1mAJc1aGetting Started with SOA using SwitchYard
@BR_LuanCestari
20. And what about WOA?
http://slidesha.re/1mAJc1aGetting Started with SOA using SwitchYard
@BR_LuanCestari
32. SwitchYard Components
http://slidesha.re/1mAJc1aGetting Started with SOA using SwitchYard
@BR_LuanCestari
●SOAP Binding
●RESTEasy Binding
●HortnetQ Binding
●JCA Binding
●HTTP Binding
●Rules Service: based
on Drools Project
●Camel Bindings
●file,ftp,jms,atom,jpa,mail,netty,q
uartz,sql,timer,direct ...
●BPEL Service: based
on RiftSaw Project
●BPM Service: based on
jBPM5 Project
43. Apache Camel
http://slidesha.re/1mAJc1aGetting Started with SOA using SwitchYard
@BR_LuanCestari
●+180 Components
●+35 EIP
●XML, Java DSL, Spring
XML, Blueprint XML,
Rest DSL, Groovy DSL,
Scala DSL and others
●OSGi
●Lightweight
44. Next steps
● Overlord (S-RAMP, Run and Design-Time Governance) – Registry,
Activity monitoring
● JBoss Rules (Drools, jBPM, etc) – Business rules and CEP
● RHQ – Operations, administration and management tools
● ModeShape – Data virtualization
● Others: ActiveMQ, Smooks, CXF, Camel, Riftsaw, etc
http://slidesha.re/1mAJc1aGetting Started with SOA using SwitchYard
@BR_LuanCestari
47. E.G. Overlord Run-time Design
http://slidesha.re/1mAJc1aGetting Started with SOA using SwitchYard
@BR_LuanCestari
48. http://slidesha.re/1mAJc1aGetting Started with SOA using SwitchYard
@BR_LuanCestari
● Website: http://switchyard.jboss.org/
●
User forum: https://community.jboss.org/en/switchyard
● IRC: #switchyard in freenode
● Issues:
https://issues.jboss.org/browse/SWITCHYARD/?selectedTab=com.atlassian.jira.jira-projects-plugin:summary-panel
● Learn:
– https://developer.jboss.org/wiki/SwitchYardVideoSeries
– https://docs.jboss.org/author/display/SWITCHYARD11/User+Guide
– https://developer.jboss.org/en/switchyard/blog/2012/06/22/an-impatient-newbie-user-s-introduction-to-switchyard
– https://github.com/jboss-switchyard/learning/tree/master/summit2013
● Source: https://github.com/jboss-switchyard
● Examples:
– http://vimeo.com/58030893
– https://github.com/jboss-switchyard/quickstarts
– https://github.com/jboss-switchyard/components
● News: https://developer.jboss.org/en/switchyard/blog/2014/06/11/switchyard-200alpha1-now-available
49. http://slidesha.re/1mAJc1aGetting Started with SOA using SwitchYard
@BR_LuanCestari
● http://www.kavistechnology.com/blog/random-thoughts-about-the-future-of-technology/
● http://blog.hedges.net/2014/01/20/why-you-dont-need-an-enterprise-service-bus-esb/
● http://www.projectoverlord.io
● https://docs.jboss.org/overlord/docs/1.0MR2/manuals/html/GettingStartedGuide/soagwithcdl.html
● http://www.projectoverlord.io/s-ramp/
● https://docs.jboss.org/overlord/sramp/0.4.0.Final/html_single/#_overview
● https://docs.jboss.org/overlord/dtgov/1.2.0.Final/html/images/s-ramp-screen-1.jpg
● https://docs.jboss.org/overlord/dtgov/1.2.0.Final/html_single/
● https://docs.jboss.org/overlord/rtgov/user/1.0.0.Final/html/images/GadgetCallTrace.png
● https://docs.jboss.org/overlord/rtgov/user/1.0.0.Final/html_single/images/GadgetResponseTime.png
● http://jboss-overlord.blogspot.com.br/2013/11/soa-governance-projects-and.html
● http://jboss-overlord.blogspot.com.br/
● https://docs.jboss.org/overlord/docs/1.0MR2/manuals/html/GettingStartedGuide/soagwithcdl.html
● https://camel.apache.org/components.html
Notas do Editor
This lecture will give an introduction of SOA, giving an background of history and an overview of its specifications. How does Service Component Architecture (SCA, which is an open source standard) can help you to create services that can exposed by an Enterprise Service Bus (ESB). The SwitchYard implement SCA specification and also bring integration of many features you have available at WildFly application server. It also aims to simplify the integration with its built-in tools (like IDE) and components. You might surprise yourself with the Open Source power.
provides complete support to develop, deploy and manage service-oriented applications
The JBoss Integration and SOA Development plugin for JBoss Developer Studio / Eclipse. It provides the following features:
Creation of SwitchYard projects
Adding SwitchYard capabilities to existing Maven based JBoss Developer Studio projects
Configuration of SwitchYard capabilities
A graphical editor for editing SwitchYard application configuration
Java2WSDL
XML catalog entries for SwitchYard configuration schema
Integration supporting the SwitchYard Maven plugin (org.switchyard:switchyard-plugin)
Support for workspace deployment of SwitchYard projects