SlideShare une entreprise Scribd logo
1  sur  21
Télécharger pour lire hors ligne
© 2015 D+H USA Corporation. All rights reserved. Osgi and Financial Messaging: A successful use case. Osgi Conference Nov 5t
2015
OSGI And Financial Messaging:

A Successful Use Case
Luis Festas Matos
D+H BBP GmbH
© 2015 D+H USA Corporation. All rights reserved. Osgi and Financial Messaging: A successful use case. Osgi Conference Nov 5t
2015
Luis Festas Matos
Emails: lufegit@gmail.com , luis.matos@dh.com, Linkedin: https://ch.linkedin.com/pub/luis-festas
matos/20/b75/66a
Brazilian, from Rio de Janeiro
Java Engineer since 2002
Osgi Engineer since 2010
Likes samba, hot weather, beaches
Lives in Switzerland
FACTS
© 2015 D+H USA Corporation. All rights reserved. Osgi and Financial Messaging: A successful use case. Osgi Conference Nov 5t
2015
Largest SWIFT ServiceBureau worldwide
• Operation since 1995
• Serving more than 500 customers in over 30 countries
directly
Company
D+H
Nr.1
1984
BBP Group
• D+H BBP GmbH, Switzerland (1984)
• D+H Financial Messaging, UK (since 2008)
• D+H GmbH, Germany (since 2011)
Pan-European locations
• Switzerland (Baden near Zurich and Geneva)
• Great Britain (London and Nottingham)
• Germany (Frankfurt)
Cross-border resilience
• Two data centers in Switzerland and Great Britain
© 2015 D+H USA Corporation. All rights reserved. Osgi and Financial Messaging: A successful use case. Osgi Conference Nov 5t
2015
Customers: Europe and
World
500+ Financial Institutions and Corporates
© 2015 D+H USA Corporation. All rights reserved. Osgi and Financial Messaging: A successful use case. Osgi Conference Nov 5t
2015
More than 500 Clients in over 30
CountriesFinancial Institutions
Corporates
ACH (Automated Clearing Houses)
ASP / BSP
© 2015 D+H USA Corporation. All rights reserved. Osgi and Financial Messaging: A successful use case. Osgi Conference Nov 5t
2015
Integrator: Software layers
• Connectors: Java, C++
• MQ, File-Based, TCP/IP
SWIF
T
GMPBackendCorporateSTP
Bank
STP
Conn
ector
OSGi
Core
• Core: OSGi
• GMP Backend, Corporate STP, Bank
STP Systems, SWIFT, FED/CHIPS,
others
Oth
ers
FED
/
© 2015 D+H USA Corporation. All rights reserved. Osgi and Financial Messaging: A successful use case. Osgi Conference Nov 5t
2015
Global Messaging Plus (GMP)
Customer’s
STP
Processing
Hosts
Interbank
Financial
Services
Hub
(Osgi Core)
Archive
Alarming
Monitoring
SWIFT

Funds
Global Compliance
Reconciliation
Multiple provider
Data feeds
JBoss
SWIFT
Application
JBoss
SIC
Application
JBoss
…
Application
SWIFT
Files
SWIFT

FIN
SIC
SECOM
FED
Chips
Tomcat / Zkoss
Users
Performance
• Over 400’000 transactions per hour / per OSG
core
Platforms
• Red Hat, Linux
Web Manual Messaging
• Users
• Tomcat / Zkoss
• Interbank services (SWIFT, FED, CHIPS, SIC, .
Interfaces to …
• Hosts
• Security & alarming management systems
• Archiving- and reconciliation applications
Hub (OSGi core)
• Queuing, routing
• No loss of messages
• No duplicates
• Conversions
• Logging, audit trail
• Automatic recovery
• JBoss Backend Applications
© 2015 D+H USA Corporation. All rights reserved. Osgi and Financial Messaging: A successful use case. Osgi Conference Nov 5t
2015
Prehistoric Software
• Limited customer-friendly API
• Not fast enough for more
demanding customers (1
million msgs/hour max with 2
cores)
• C++ STP Core
• Limited architectural plan
(mostly do as you go)
• Non-scalable (maximum 2 STP
cores per Backend)
• Fat Java client
• Reliable but not transactional
© 2015 D+H USA Corporation. All rights reserved. Osgi and Financial Messaging: A successful use case. Osgi Conference Nov 5t
2015
GMP requirements
• Transactional / No message
loss
• Easy maintenance /
deployment
• Automated / customizable
workflow
• Continuous integration tests
• Extendable by customers
100
%
99.94
%
100
%
2006: 99.92%
2007: 99.91%
2008: 99.94%
100
%
100%
99.98%
2012: 99.98%
2013: 99.99%
2014: 99.98%
R 1 3 5
2 4 6
• Faster but keeping same level of
stability
• Keep virtually 0%
downtime
• Scalable vertically…and horizontally
• Make free coffee
• Guess Lotto
numbers
© 2015 D+H USA Corporation. All rights reserved. 10
2010: Research
Lean
Architecture
Vertical and Horizontal
scalability
Fast
No message loss
Automated AND customizable
workflows
Open source Support from vendors
Easy maintenance /
deployment
© 2015 D+H USA Corporation. All rights reserved. 11
Proofs of Concept & Benchmarks
• J2EE architecture in general
(too slow)
(too slow, no easy horizontal scaling)
( namespace, classloader problems )
( not XA transactions ready)
( too slow )
( not OSGi ready )
( too heavy and slow )
• Servicemix with JBI and NMR, Aries JPA
• Jboss with JPA / JTA
• Spring DM
• Cassandra, CouchDB, noSQL DBs
• Drools
• Hibernate
• Workshops with Fuse / Jeff Genender and Adrian Trenaman
© 2015 D+H USA Corporation. All rights reserved. 12
Survivors
Development Support Tools
Development Tools / Platforms
Database Systems
Operative Systems
© 2015 D+H USA Corporation. All rights reserved. 13
Architectural / Design decisions
• Transactions with XA (no JTA)
– Camel, ActiveMQ, Database and Hazelcast as XA resources
• Develop own «non-sql like» lean persistence layer (no JPA)
• Camel used for main routes connecting services
– Routing slip pattern for flexibility
• Mvel rules on strategic places for customization
• Hazelcast for inter-karaf distributed data
• Aries blueprint XML
– Injection and service creation, life cycle (0% annotations)
• Separate Processing database from Querying database
– 1 simple index per table (key) on processing database (speed optimized)
– Several indexes on querying database (Solr based, outside Integrator)
• Karaf «features» for provisioning
© 2015 D+H USA Corporation. All rights reserved. 14
Topology
CONNECTORS Network of Brokers
HOSTS
FINANCIAL SERVICES
© 2015 D+H USA Corporation. All rights reserved. 15
Message Flow on OSGi
XA
XA
TRANSACTION WORKFLOW
Printer
Q
uery
DB
Final
Destination
Exceptions
XAXASERVICES
CAMEL ROUTES
MVEL RULES
© 2015 D+H USA Corporation. All rights reserved. 16
Key differentiators: JSON
• Jsonschema2Pojo-based DTOs
• Very fast
– on-the-fly Json to Pojo to Json conversion
– using FasterXML’s jackson-databind
– Github contributions to OSGify project
• Used in:
– Intra-process communication (JSON over ActiveMQ)
– Key-value, No-SQL-like persist
• Collections (tables) inferred directly from POJO definition
– Own created annotators
– Using advanced JSON (Jackson) serialization features
© 2015 D+H USA Corporation. All rights reserved. 17
Key differentiators: Interface
• Own defined persistence layer
• Bare, Map-like interface
• “Need for speed”
© 2015 D+H USA Corporation. All rights reserved. 18
Key differentiators: Transactions
• XA transactional achieved
• Cutting edge technology
– Often using latest or even SNAPSHOT releases
– Pushing vendors to be full XA-ready
– Close collaboration with Atomikos and Hazelcast
• XA resources
– Camel
– Oracle, H2, Ingres DBs
– ActiveMQ
– Hazelcast
• Constant tests
– “Pull the plug”
– Recovery while system online
– Recovery under system restart
© 2015 D+H USA Corporation. All rights reserved. 19
Key differentiators: Flexibility
• Versioned Mvel Rules
• Changeable by the customer
– New rules can be added without downtime
– Switch between old and new rules by command
• Friendly GUI for BPMN-like processes to compile to Mvel rules
– In development
© 2015 D+H USA Corporation. All rights reserved. 20
Conclusions
• Open source-based, support contracts
• No message loss (tests and customers)
• Transactional (with XA)
• Fast (suprisingly faster than C++-based core, one-to-one)
• Stable (downtime < 0.01%)
• Customizable with Mvel Rules
• Out of the box, automated basic configuration
• Lean architecture
• Vertically and horizontally scalable (karaf and ActiveMQ)
• Brewing coffee or guessing the Lotto numbers
© 2015 D+H USA Corporation. All rights reserved. Osgi and Financial Messaging: A successful use case. Osgi Conference Nov 5t
2015
21
THANK YOU
Luis Festas
Matos
D+H BBP GmbH

Contenu connexe

Similaire à OSGi and Financial Messaging - A successful use case - Luis Matos

"Portrait of the developer as The Artist" Lockheed Architect Workshop
"Portrait of the developer as The Artist" Lockheed Architect Workshop"Portrait of the developer as The Artist" Lockheed Architect Workshop
"Portrait of the developer as The Artist" Lockheed Architect Workshop
Patrick Chanezon
 
Akmal Chaudhri - How to Build Streaming Data Applications: Evaluating the Top...
Akmal Chaudhri - How to Build Streaming Data Applications: Evaluating the Top...Akmal Chaudhri - How to Build Streaming Data Applications: Evaluating the Top...
Akmal Chaudhri - How to Build Streaming Data Applications: Evaluating the Top...
NoSQLmatters
 
Shanish_SQL_PLSQL_Profile
Shanish_SQL_PLSQL_ProfileShanish_SQL_PLSQL_Profile
Shanish_SQL_PLSQL_Profile
Shanish Jain
 
Does the Cloud Change Anything? What can be learned from the Changing Enterpr...
Does the Cloud Change Anything? What can be learned from the Changing Enterpr...Does the Cloud Change Anything? What can be learned from the Changing Enterpr...
Does the Cloud Change Anything? What can be learned from the Changing Enterpr...
Flexera
 

Similaire à OSGi and Financial Messaging - A successful use case - Luis Matos (20)

IMCSummit 2015 - 1 IT Business - The Evolution of Pivotal Gemfire
IMCSummit 2015 - 1 IT Business  - The Evolution of Pivotal GemfireIMCSummit 2015 - 1 IT Business  - The Evolution of Pivotal Gemfire
IMCSummit 2015 - 1 IT Business - The Evolution of Pivotal Gemfire
 
Pelegri Desarrollando en una nueva era de software
Pelegri   Desarrollando en una nueva era de software Pelegri   Desarrollando en una nueva era de software
Pelegri Desarrollando en una nueva era de software
 
Proud to be polyglot
Proud to be polyglotProud to be polyglot
Proud to be polyglot
 
Market trends in IT - exchange cala - October 2015
Market trends in IT - exchange cala - October 2015Market trends in IT - exchange cala - October 2015
Market trends in IT - exchange cala - October 2015
 
[db tech showcase Tokyo 2016] E34: Oracle SE - RAC, HA and Standby are Still ...
[db tech showcase Tokyo 2016] E34: Oracle SE - RAC, HA and Standby are Still ...[db tech showcase Tokyo 2016] E34: Oracle SE - RAC, HA and Standby are Still ...
[db tech showcase Tokyo 2016] E34: Oracle SE - RAC, HA and Standby are Still ...
 
Modernizing an Existing SOA-based Architecture with APIs
Modernizing an Existing SOA-based Architecture with APIsModernizing an Existing SOA-based Architecture with APIs
Modernizing an Existing SOA-based Architecture with APIs
 
Open Source at Salesforce.com
Open Source at Salesforce.comOpen Source at Salesforce.com
Open Source at Salesforce.com
 
Pivotal Digital Transformation Forum: Data Science Technical Overview
Pivotal Digital Transformation Forum: Data Science Technical OverviewPivotal Digital Transformation Forum: Data Science Technical Overview
Pivotal Digital Transformation Forum: Data Science Technical Overview
 
"Portrait of the developer as The Artist" Lockheed Architect Workshop
"Portrait of the developer as The Artist" Lockheed Architect Workshop"Portrait of the developer as The Artist" Lockheed Architect Workshop
"Portrait of the developer as The Artist" Lockheed Architect Workshop
 
Snowflake: The most cost-effective agile and scalable data warehouse ever!
Snowflake: The most cost-effective agile and scalable data warehouse ever!Snowflake: The most cost-effective agile and scalable data warehouse ever!
Snowflake: The most cost-effective agile and scalable data warehouse ever!
 
Akmal Chaudhri - How to Build Streaming Data Applications: Evaluating the Top...
Akmal Chaudhri - How to Build Streaming Data Applications: Evaluating the Top...Akmal Chaudhri - How to Build Streaming Data Applications: Evaluating the Top...
Akmal Chaudhri - How to Build Streaming Data Applications: Evaluating the Top...
 
HTML5--The 30,000' View (A fast-paced overview of HTML5)
HTML5--The 30,000' View (A fast-paced overview of HTML5)HTML5--The 30,000' View (A fast-paced overview of HTML5)
HTML5--The 30,000' View (A fast-paced overview of HTML5)
 
Fast, Flexible Application Development with Oracle Database Cloud Service
Fast, Flexible Application Development with Oracle Database Cloud ServiceFast, Flexible Application Development with Oracle Database Cloud Service
Fast, Flexible Application Development with Oracle Database Cloud Service
 
Modernizing Global Shared Data Analytics Platform and our Alluxio Journey
Modernizing Global Shared Data Analytics Platform and our Alluxio JourneyModernizing Global Shared Data Analytics Platform and our Alluxio Journey
Modernizing Global Shared Data Analytics Platform and our Alluxio Journey
 
How to Manage APIs in your Enterprise for Maximum Reusability and Governance
How to Manage APIs in your Enterprise for Maximum Reusability and GovernanceHow to Manage APIs in your Enterprise for Maximum Reusability and Governance
How to Manage APIs in your Enterprise for Maximum Reusability and Governance
 
How to Manage APIs in your Enterprise for Maximum Reusability and Governance
How to Manage APIs in your Enterprise for Maximum Reusability and GovernanceHow to Manage APIs in your Enterprise for Maximum Reusability and Governance
How to Manage APIs in your Enterprise for Maximum Reusability and Governance
 
Is OLAP Dead?: Can Next Gen Tools Take Over?
Is OLAP Dead?: Can Next Gen Tools Take Over?Is OLAP Dead?: Can Next Gen Tools Take Over?
Is OLAP Dead?: Can Next Gen Tools Take Over?
 
Shanish_SQL_PLSQL_Profile
Shanish_SQL_PLSQL_ProfileShanish_SQL_PLSQL_Profile
Shanish_SQL_PLSQL_Profile
 
Does the Cloud Change Anything? What can be learned from the Changing Enterpr...
Does the Cloud Change Anything? What can be learned from the Changing Enterpr...Does the Cloud Change Anything? What can be learned from the Changing Enterpr...
Does the Cloud Change Anything? What can be learned from the Changing Enterpr...
 
Journey to the Cloud: What I Wish I Knew Before I Started
Journey to the Cloud: What I Wish I Knew Before I Started Journey to the Cloud: What I Wish I Knew Before I Started
Journey to the Cloud: What I Wish I Knew Before I Started
 

Plus de mfrancis

Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
mfrancis
 
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
mfrancis
 
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
mfrancis
 
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
mfrancis
 

Plus de mfrancis (20)

Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
Eclipse Modeling Framework and plain OSGi the easy way - Mark Hoffman (Data I...
 
OSGi and Java 9+ - BJ Hargrave (IBM)
OSGi and Java 9+ - BJ Hargrave (IBM)OSGi and Java 9+ - BJ Hargrave (IBM)
OSGi and Java 9+ - BJ Hargrave (IBM)
 
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
Simplify Web UX Coding using OSGi Modularity Magic - Paul Fraser (A2Z Living)
 
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank LyaruuOSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
OSGi for the data centre - Connecting OSGi to Kubernetes - Frank Lyaruu
 
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
Remote Management and Monitoring of Distributed OSGi Applications - Tim Verbe...
 
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
OSGi with Docker - a powerful way to develop Java systems - Udo Hafermann (So...
 
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
A real world use case with OSGi R7 - Jurgen Albert (Data In Motion Consulting...
 
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
OSGi Feature Model - Where Art Thou - David Bosschaert (Adobe)
 
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
Migrating from PDE to Bndtools in Practice - Amit Kumar Mondal (Deutsche Tele...
 
OSGi CDI Integration Specification - Ray Augé (Liferay)
OSGi CDI Integration Specification - Ray Augé (Liferay)OSGi CDI Integration Specification - Ray Augé (Liferay)
OSGi CDI Integration Specification - Ray Augé (Liferay)
 
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
How OSGi drives cross-sector energy management - Jörn Tümmler (SMA Solar Tech...
 
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
Improved developer productivity thanks to Maven and OSGi - Lukasz Dywicki (Co...
 
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
It Was Twenty Years Ago Today - Building an OSGi based Smart Home System - Ch...
 
Popular patterns revisited on OSGi - Christian Schneider (Adobe)
Popular patterns revisited on OSGi - Christian Schneider (Adobe)Popular patterns revisited on OSGi - Christian Schneider (Adobe)
Popular patterns revisited on OSGi - Christian Schneider (Adobe)
 
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
Integrating SLF4J and the new OSGi LogService 1.4 - BJ Hargrave (IBM)
 
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
OSG(a)i: because AI needs a runtime - Tim Verbelen (imec)
 
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
Flying to Jupiter with OSGi - Tony Walsh (ESA) & Hristo Indzhov (Telespazio V...
 
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
MicroProfile, OSGi was meant for this - Ray Auge (Liferay)
 
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
Prototyping IoT systems with a hybrid OSGi & Node-RED platform - Bruce Jackso...
 
How to connect your OSGi application - Dirk Fauth (Bosch)
How to connect your OSGi application - Dirk Fauth (Bosch)How to connect your OSGi application - Dirk Fauth (Bosch)
How to connect your OSGi application - Dirk Fauth (Bosch)
 

Dernier

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Dernier (20)

Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 

OSGi and Financial Messaging - A successful use case - Luis Matos

  • 1. © 2015 D+H USA Corporation. All rights reserved. Osgi and Financial Messaging: A successful use case. Osgi Conference Nov 5t 2015 OSGI And Financial Messaging:
 A Successful Use Case Luis Festas Matos D+H BBP GmbH
  • 2. © 2015 D+H USA Corporation. All rights reserved. Osgi and Financial Messaging: A successful use case. Osgi Conference Nov 5t 2015 Luis Festas Matos Emails: lufegit@gmail.com , luis.matos@dh.com, Linkedin: https://ch.linkedin.com/pub/luis-festas matos/20/b75/66a Brazilian, from Rio de Janeiro Java Engineer since 2002 Osgi Engineer since 2010 Likes samba, hot weather, beaches Lives in Switzerland FACTS
  • 3. © 2015 D+H USA Corporation. All rights reserved. Osgi and Financial Messaging: A successful use case. Osgi Conference Nov 5t 2015 Largest SWIFT ServiceBureau worldwide • Operation since 1995 • Serving more than 500 customers in over 30 countries directly Company D+H Nr.1 1984 BBP Group • D+H BBP GmbH, Switzerland (1984) • D+H Financial Messaging, UK (since 2008) • D+H GmbH, Germany (since 2011) Pan-European locations • Switzerland (Baden near Zurich and Geneva) • Great Britain (London and Nottingham) • Germany (Frankfurt) Cross-border resilience • Two data centers in Switzerland and Great Britain
  • 4. © 2015 D+H USA Corporation. All rights reserved. Osgi and Financial Messaging: A successful use case. Osgi Conference Nov 5t 2015 Customers: Europe and World 500+ Financial Institutions and Corporates
  • 5. © 2015 D+H USA Corporation. All rights reserved. Osgi and Financial Messaging: A successful use case. Osgi Conference Nov 5t 2015 More than 500 Clients in over 30 CountriesFinancial Institutions Corporates ACH (Automated Clearing Houses) ASP / BSP
  • 6. © 2015 D+H USA Corporation. All rights reserved. Osgi and Financial Messaging: A successful use case. Osgi Conference Nov 5t 2015 Integrator: Software layers • Connectors: Java, C++ • MQ, File-Based, TCP/IP SWIF T GMPBackendCorporateSTP Bank STP Conn ector OSGi Core • Core: OSGi • GMP Backend, Corporate STP, Bank STP Systems, SWIFT, FED/CHIPS, others Oth ers FED /
  • 7. © 2015 D+H USA Corporation. All rights reserved. Osgi and Financial Messaging: A successful use case. Osgi Conference Nov 5t 2015 Global Messaging Plus (GMP) Customer’s STP Processing Hosts Interbank Financial Services Hub (Osgi Core) Archive Alarming Monitoring SWIFT
 Funds Global Compliance Reconciliation Multiple provider Data feeds JBoss SWIFT Application JBoss SIC Application JBoss … Application SWIFT Files SWIFT
 FIN SIC SECOM FED Chips Tomcat / Zkoss Users Performance • Over 400’000 transactions per hour / per OSG core Platforms • Red Hat, Linux Web Manual Messaging • Users • Tomcat / Zkoss • Interbank services (SWIFT, FED, CHIPS, SIC, . Interfaces to … • Hosts • Security & alarming management systems • Archiving- and reconciliation applications Hub (OSGi core) • Queuing, routing • No loss of messages • No duplicates • Conversions • Logging, audit trail • Automatic recovery • JBoss Backend Applications
  • 8. © 2015 D+H USA Corporation. All rights reserved. Osgi and Financial Messaging: A successful use case. Osgi Conference Nov 5t 2015 Prehistoric Software • Limited customer-friendly API • Not fast enough for more demanding customers (1 million msgs/hour max with 2 cores) • C++ STP Core • Limited architectural plan (mostly do as you go) • Non-scalable (maximum 2 STP cores per Backend) • Fat Java client • Reliable but not transactional
  • 9. © 2015 D+H USA Corporation. All rights reserved. Osgi and Financial Messaging: A successful use case. Osgi Conference Nov 5t 2015 GMP requirements • Transactional / No message loss • Easy maintenance / deployment • Automated / customizable workflow • Continuous integration tests • Extendable by customers 100 % 99.94 % 100 % 2006: 99.92% 2007: 99.91% 2008: 99.94% 100 % 100% 99.98% 2012: 99.98% 2013: 99.99% 2014: 99.98% R 1 3 5 2 4 6 • Faster but keeping same level of stability • Keep virtually 0% downtime • Scalable vertically…and horizontally • Make free coffee • Guess Lotto numbers
  • 10. © 2015 D+H USA Corporation. All rights reserved. 10 2010: Research Lean Architecture Vertical and Horizontal scalability Fast No message loss Automated AND customizable workflows Open source Support from vendors Easy maintenance / deployment
  • 11. © 2015 D+H USA Corporation. All rights reserved. 11 Proofs of Concept & Benchmarks • J2EE architecture in general (too slow) (too slow, no easy horizontal scaling) ( namespace, classloader problems ) ( not XA transactions ready) ( too slow ) ( not OSGi ready ) ( too heavy and slow ) • Servicemix with JBI and NMR, Aries JPA • Jboss with JPA / JTA • Spring DM • Cassandra, CouchDB, noSQL DBs • Drools • Hibernate • Workshops with Fuse / Jeff Genender and Adrian Trenaman
  • 12. © 2015 D+H USA Corporation. All rights reserved. 12 Survivors Development Support Tools Development Tools / Platforms Database Systems Operative Systems
  • 13. © 2015 D+H USA Corporation. All rights reserved. 13 Architectural / Design decisions • Transactions with XA (no JTA) – Camel, ActiveMQ, Database and Hazelcast as XA resources • Develop own «non-sql like» lean persistence layer (no JPA) • Camel used for main routes connecting services – Routing slip pattern for flexibility • Mvel rules on strategic places for customization • Hazelcast for inter-karaf distributed data • Aries blueprint XML – Injection and service creation, life cycle (0% annotations) • Separate Processing database from Querying database – 1 simple index per table (key) on processing database (speed optimized) – Several indexes on querying database (Solr based, outside Integrator) • Karaf «features» for provisioning
  • 14. © 2015 D+H USA Corporation. All rights reserved. 14 Topology CONNECTORS Network of Brokers HOSTS FINANCIAL SERVICES
  • 15. © 2015 D+H USA Corporation. All rights reserved. 15 Message Flow on OSGi XA XA TRANSACTION WORKFLOW Printer Q uery DB Final Destination Exceptions XAXASERVICES CAMEL ROUTES MVEL RULES
  • 16. © 2015 D+H USA Corporation. All rights reserved. 16 Key differentiators: JSON • Jsonschema2Pojo-based DTOs • Very fast – on-the-fly Json to Pojo to Json conversion – using FasterXML’s jackson-databind – Github contributions to OSGify project • Used in: – Intra-process communication (JSON over ActiveMQ) – Key-value, No-SQL-like persist • Collections (tables) inferred directly from POJO definition – Own created annotators – Using advanced JSON (Jackson) serialization features
  • 17. © 2015 D+H USA Corporation. All rights reserved. 17 Key differentiators: Interface • Own defined persistence layer • Bare, Map-like interface • “Need for speed”
  • 18. © 2015 D+H USA Corporation. All rights reserved. 18 Key differentiators: Transactions • XA transactional achieved • Cutting edge technology – Often using latest or even SNAPSHOT releases – Pushing vendors to be full XA-ready – Close collaboration with Atomikos and Hazelcast • XA resources – Camel – Oracle, H2, Ingres DBs – ActiveMQ – Hazelcast • Constant tests – “Pull the plug” – Recovery while system online – Recovery under system restart
  • 19. © 2015 D+H USA Corporation. All rights reserved. 19 Key differentiators: Flexibility • Versioned Mvel Rules • Changeable by the customer – New rules can be added without downtime – Switch between old and new rules by command • Friendly GUI for BPMN-like processes to compile to Mvel rules – In development
  • 20. © 2015 D+H USA Corporation. All rights reserved. 20 Conclusions • Open source-based, support contracts • No message loss (tests and customers) • Transactional (with XA) • Fast (suprisingly faster than C++-based core, one-to-one) • Stable (downtime < 0.01%) • Customizable with Mvel Rules • Out of the box, automated basic configuration • Lean architecture • Vertically and horizontally scalable (karaf and ActiveMQ) • Brewing coffee or guessing the Lotto numbers
  • 21. © 2015 D+H USA Corporation. All rights reserved. Osgi and Financial Messaging: A successful use case. Osgi Conference Nov 5t 2015 21 THANK YOU Luis Festas Matos D+H BBP GmbH