SIA, instant payments

Download Report

Transcript SIA, instant payments

SIA – Soluzione Instant Payment
Mattia Ronchi
Senior Technical Analyst - SIA
#redhatosd
Agenda
Introduzione
Il progetto Instant Payment
La soluzione
Conclusioni
Introduzione
Chi è SIA
BUSINESS HIGHLIGHTS
THE GROUP
Founded in July
1977
European leader in the areas
of payments, cards, network
services and capital markets
EUROPE
Innovative network
applications for banks
and businesses
RTGS
Advanced collection
and payment
services
ATM/POS terminal
management
Front-end services
Innovative
for companies and technology solutions
P.A.
for marketing
Frankfurt
Utrecht
Consulting
Brussels
Warsaw
London
CORPORATE INFORMATION
Revenue (SIA Group):
449.4 million Euros
Budapest
NETWORK
Employees (SIA Group):
1,612
358.2 terabyte
of data carried
Parma
100% availability
Turin
Macerata
Milan
Rome
Main offices
Sales offices
CARDS
3.9 billion operations
747,325 merchants managed
65.1 million credit, debit and prepaid cards
AFRICA
Pretoria
PAYMENTS
2.8 billion transactions
1,154 customers
2
SIA e RedHat
2013 - Partnership to develop JDG Library
2004 - New Trading platform
Delivered the first financial market platform
on Red Hat Enterprise Linux 2.1
Red Hat released JBoss Data Grid 6.2, including
the Hot Rod C++ Client library developed in
partnership with SIA
2016 - Instant Payment Platform
Definition of the European
Instant Payment Platform
2015 - Application Modernization Program
Partnership to re-write core applications
running on the legacy system
2010 - Real Time Kernel Adoption
2000 - First application delivered on linux OS
Ported the first application from UNIX to Red Hat
Linux 7.2
Adopt Real Time kernel for Trading
Platform
Il progetto Instant Payment
Use Case e funzionalità - 1
Pagamento istantaneo in area SEPA (Single Euro Payments Area)
Collegamento al sistema di pagamenti IPLM
(Instant Payment Liquidity Management)
Tutte le funzionalità già disponibili oggi sui circuiti tradizionali, ma in real-time:
– Invio/ricezione di denaro
– Inquiry sullo stato delle transazioni
– Gestione della liquidazione mediante LAC (Liquidity Adjustment Cycle)
– Configurazioni anagrafiche modificabili “a caldo”
Use Case e funzionalità - 2
Liqudity
Management
2. Notifica di addebito
1. Pagamento
Debitor
6. Esito pagamento
5. Conferma di accredito
Instant
Payment
System
Inquiry
Web
3. Richiesta autorizzazione
4. Esito autorizzazione
6. Esito pagamento
Credito
r
Vincoli e requisiti
Performance: elevato numero di tx/sec, SLA su roundtrip nell’ordine di 1 sec.
Disponibilità: 24/7/365
Interfacciamento con sistemi eterogenei e di terze parti
High Availability: il sistema è distribuito su più siti geografici in configurazione
active-active
La Soluzione
Elementi di innovazione
Utilizzo di in-memory cache in luogo di un tradizionale DBMS
Utilizzo di EIP (Enterprise Integration Pattern) e DSL (Domain Specific
Language) per l’integrazione con sistemi eterogenei
Tecnologie Utilizzate
JBoss EAP
JDK 1.8
In-memory Cache: JBoss DataGrid
EIP/DSL: JBoss Fuse – Apache Camel
JBoss ActiveMQ
IBM Websphere MQ
Criticità e Soluzioni - 1
Massima resilienza e affidabilità
ottenuta tramite l’utilizzo di due
siti geografici
1. Put (K, V)
Configurazione Active-Active
mediante l’utilizzo di Network of
Brokers (ActiveMQ)
Site 1
Site 2
RH boss
Node 1
RH Jboss
Node 3
RH Jboss
Node 2
DataGrid
Utilizzo di DataGrid in
configurazione
distribuita/replicata
1.1 Put (K, V)
(Replica)
2.
(R 1. G
i ch et
ies (K)
2.2
ta
da
(C .G
to)
e
on t (
seg K)
na
da
to)
DataGrid
RH Jboss
Node 4
DataGrid
2. Get (K)
Criticità e Soluzioni - 2
Performance: ottimizzazione configurazione DataGrid al fine di minimizzare le
comunicazioni remote
Operation della soluzione: tool ad-hoc per l’accesso alle Cache e per Monitoring
Nodo 1 (master di chiavi A,B,C)
Nodo X
Transazione Utente A
Cache
Activator
* Se le cache del data grid coinvolte nella
transazione utilizzano la stessa chiave o parte
di essa., tutte le chiamate risulteranno locali
(es: Utente – Data – Tx ID)
Listener
Put/Get
Put/Get
Put/Get
Cache 1
Cache 2
Cache 3
Nodo 2 (master di chiavi D,E,F)
Listener
Put/Get
Cache 4
Nodo 3 (master di chiavi G,H)
Listener
Put/Get
Cache 5
Nodo 4 (master di chiavi I,L)
Listener
Conclusioni
Obiettivi raggiunti
Tutti i requisiti sono stati indirizzati
L’approccio dichiarativo (DSL) ha permesso di ridurre la quantità di codice
scritto
Le tecnologie scelte si sono dimostrate flessibili ad accogliere nuovi requisiti
Valore aggiunto Red Hat - 1
Partnership a 360°
– Definizione e studio architetturale
– Presenza nelle community
– Supporto tecnico e bugfix
Valore aggiunto Red Hat - 2
Stack Middleware “mix and match”
– Soluzioni indipendenti e componibili (Fuse – Camel, JDG, A-MQ…)
Modalità di ingaggio
– Il valore del modello a sottoscrizione
Grazie
Mattia Ronchi
Senior Technical Analyst - SIA
#redhatosd