Po szynie do celu. Prosta integracja systemów legacy z nowymi

Transkrypt

Po szynie do celu. Prosta integracja systemów legacy z nowymi
Po szynie do celu. Prosta
integracja systemów legacy
z nowymi technologiami.
Grzegorz Hałajko
B2B Sp. z o.o.
Open Source Day 2013
11-2-27
Ewolucja systemów I
Sprzedaż
Marketing
Ewolucja systemów II
Sprzedaż
Marketing
Windykacja
Ewolucja systemów III
Sprzedaż
Marketing
Windykacja
Portal
korporacyjny
Partner
biznesowy
Ewolucja systemów IV
Marketing
Sprzedaż
Windykacja
Portal
korporacyjny
Partner
biznesowy
Ewolucja systemów V
Sprzedaż
Marketing
ESB
Portal
korporacyjny
Windykacja
Partner
biznesowy
Enterprise Service Bus
Enterprise Service Bus
HTTP
FTP
Plik
SQL
WS
EJB
EMAIL
JMS
...
- Transformacja
- Routing
- Gwarancja dostarczenia
danych
- Wykonanie logiki
biznesowej
- Bezpieczeństwo
- Monitoring
- Zarządzanie
Red Hat
JBoss Fuse
FUSE - Domain Specific
Language
Pliki, FTP, SFTP, HTTP
SQL
FUSE - Domain Specific
Language
Pliki, FTP, SFTP, HTTP
<route>
<from uri="ftp://scott@localhost/public/reports?password=tiger"/>
<to uri="file://target/test-reports"/>
</route>
SQL
<route>
<from uri="direct:projects" />
<setHeader headerName="max”>
<constant>1</constant>
</setHeader>
<to uri="sql:SELECT * FROM family WHERE children < :#max">
</route>
JBoss FUSE - FuseIDE
RedHat JBoss FUSE
ahc, amqp, apns, atom, avro, aws, bam, base64, bean-validator, beanio,
bindy, blueprint, cache, castor, cdi, cmis, cometd, context, core-osgi, core-
120
Komponentów
jms
xml, couchdb, crypto, csv, cxf, cxf-transport, dns, dozer, eclipse, ejb,
elasticsearch, eventadmin, exec, flatpack, fop, freemarker, ftp, gae,
groovy, gson, guava-eventbus, guice, hawtdb, hazelcast, hbase, hdfs, hl7,
http, http4, ibatis, irc, jackson, jasypt, javaspace, jaxb, jclouds, jcr, jdbc,
jetty, jibx, jing,
ldap,
, jmx, josql, jpa, jsch, jt400, juel, jxpath, kestrel, krati,
leveldb, lucene, mail, mina, mina2, mongodb, mqtt, msv, mvel,
mybatis, nagios, netty, ognl, paxlogging, printer, protobuf, quartz, quickfix,
restlet, rmi, routebox, rss, ruby, rx, saxon, scala, scala29, script, servlet,
18 sql
formatów danych
twitter
websocket
servletlistener, shiro, sip, sjms, smpp, snmp, soap, solr, spring,
spring-batch, spring-integration, spring-javaconfig, spring-ldap, springneo4j, spring-redis, spring-security, spring-ws,
, ssh, stax, stream,
stringtemplate, syslog, tagsoup, test, test-blueprint, test-spring, testng,
, urlrewrite, velocity, web, web-standalone,
xmlbeans,
zookeeper,
xmljson,
,
xmlrpc, xmlsecurity, xmpp, xstream, zipfile,
Case I
Wyzwalanie czasem
http://....
Transformacja
Cache
RESTful
Web services
NBP
http://www.nbp.pl/kursy/xml/LastA.xml
Wynik działania
http://localhost:8080/currency/nbp/xml
http://localhost:8080/currency/nbp/json
{"@id":"nbp","currency":[
{"code":"USD","exchangeRate":"3,1646"},
{"code":"HKD","exchangeRate":"0,4078"},
{"code":"EUR","exchangeRate":"4,1479"}]}
Case II
http://goo..
Transformacja XML
Zrównoleglenie
Agregacja
http://goo..
Transformacja XML
http://goo..
RESTful
Web services
Transformacja XML
Transformacja
GOOGLE
http://www.google.com/ig/calculator?hl=en&q=10PLN=?USD
{lhs: "10 Polish zloty",
rhs: "3.16556 U.S. Dollars",
error: "",
icc: true}
Wynik działania
http://localhost:8080/currency/google/xml
http://localhost:8080/currency/google/json
{"@id":"google","currency":
[{"code":"USD","exchangeRate":"3,17389786"},
{"code":"HKD","exchangeRate":"0,409023392"},
{"code":"EUR","exchangeRate":"4,15082363"}]}
Niewłaściwe narzędzie
JBoss Fuse
XXXX
Foto: http://www.maispourquoijedeviensmerebordel.fr/
Dziękuje za
uwagę.
[email protected]
JBoss Fuse - start
Instalacja
osgi:install -s mvn:pl.b2b.cfx/osd-currency/0.0.1-SNAPSHOT
[ 273] [Active ] [Created ] [
] [ 30] Apache Karaf :: Web Console :: Gogo Plugin
(2.3.0.fuse-71-047)
[ 274] [Active ] [
][
] [ 30] Apache Felix Web Console Event Plugin (1.0.2)
[ 281] [Active ] [
][
] [ 50] camel-freemarker (2.10.0.fuse-71-047)
[ 282] [Active ] [
][
] [ 50] Apache ServiceMix :: Bundles :: freemarker
(2.3.19.1)
[ 294] [Active ] [
] [Started] [ 60] OpenSource Day :: Presentation ::
Exchange rate (0.0.1.SNAPSHOT)
Projekt
NBP – Implementacja
pl.b2b.cfx.exchange.ICurrencyService
NBP – Implementacja
Format - XML
Format - JSON
Google - Implementacja
Narzędzia graficzne
Narzędzia graficzne

Podobne dokumenty