La piattaforma web di CNA: Istanze Drupal replicabili integrate con Alfresco ...
Implementazione di una soluzione a microservizi: benifici organizzativi ed economici
1. Implementazione di una soluzione a
microservizi: benefici organizzativi ed economici
Balint Maschio( Monrif )
MoM 2016
Meeting on Microservices
2. Cosa devo aspettarmi da questa presentazione?
• Cosa vedrò
• Strutture informatiche generali nel mondo dell’editoria
• Processi specifici in Monrif
• Problemi e soluzioni adottate
• Impatti e vantaggi delle soluzioni adottate
• Tools e metodologie per lo sviluppo
• Pipeline e progetti futuri
• Cosa non vedrò
• Codice di nessun tipo ( Jolie o altro )
• Sofismi software
• Strutture dati o diagrammi di DB
3. Strutture informatiche generali nel
mondo dell’editoria
• Anche per un prodotto a «bassa» tecnologia
c’è bisogno di una azienda ad alta densità
tecnologica.
• Il reparto IT è coinvolto in tutti gli aspetti
della vita di una azienda editoriale
• Aree di competenza dell’ IT
• Software per la produzione del giornale
• Software per la distribuzione del
giornale
• Software per la gestione amministrativa
• Software per gestione dei
clienti/collaboratori
• Software per la gestione delle versioni
on-line
4. Processi specifici in Monrif
• Anche in Monrif sono presenti molti dei
gruppi software della precedente slide
• Software per la produzione del giornale
• Hermes 11
• Software per la distribuzione del giornale
• SDQ
• Software per la gestione amministrativa
• SAP
• Software per gestione dei collaboratori
• Bordero /Portale Collaboratori
• Software gestione versione On-line
• Polopoly
• E-commerce
• InEdicola
Hermes11/Polopoly
SDQ
Inaz
Bordero
Sap
InEdicola Giornale on-line
5. Monrif ed i microservizi
La necessità di procedere ad una razionalizzazione dei processi in ottica
microservizi è stata evidenziata circa a meta del 2015 ragionando in questi
termini
Accesso ai dati dei diversi software in maniera rapida ed standardizzata
Linearizzazione dei processi di scambio dati unificando sotto un’unica
tecnologia gli scambi dei dati
Eliminazione per quanto possibile di processi asincroni o che coinvolgono
manipolazione di files di scambio
6. Monrif e Jolie
Una relazione che è partita piano ma che sta crescendo:
Jolie entra in azienda alla fine del 2014 come un prodotto specifico di
connessione tra SAP e Arxivar ( JSap Italiana Software)
Luglio 2015 Jolie viene messo in tecnological evaluation con altre
tecnologie tra cui Talend e vince la sfida
Ottobre 2015 La presenza di Jolie in azienda viene messa in discussione a
causa di divergenze con il fornitore Arxivar ma al subentro del nuovo
fornitore (Horsa) la validità della soluzione Jolie viene confermata
7. Monrif e Jolie
Fine 2015: Primo progetto Jolie sviluppato interamente in Monrif che comprende
l’integrazione con SAP ed un flusso di gestione della manutenzione impianti.
Inizio 2016: Monrif prosegue l’investimento su Jolie acquistando da ItalianaSoftware
la piattaforma Jolie Enterprise e formando all’interno 3 risorse ( corso di 3 giorni)
Primavera 2016: Ampliamento del progetto Arxivar con maggiori funzionalità
Estate 2016 : Progetti in parallelo che coinvolgono
Gestione Risorse
Gestione Collaboratori
Ampliamento del progetto Manutenzione
Marketing
Fine 2016: Di fronte all’aumento delle implementazioni Jolie e dell’espansione della
infrastruttura, Monrif acquista da Italiana Software un ulteriore licenza per JCloud
8. Perché JOLIE e no Talend
• Talend è sicuramente un ottimo prodotto con molti punti forza ma
alcuni punti che non lo rendono cosi adatto ai microservizi
• Necessaria la conoscenza di un framework complesso
• Necessaria una infrastruttura considerevole con la relativa gestione
• JOLIE dal suo canto
• Non è un framework ma un linguaggio
• Non richiede particolari infrastrutture o containers
• Ha un vero paradigma a microservizi.
9. Classi di microservizi (come li vediamo in Monrif)
• Classi di microservizi
• Di interfaccia di dato
• Quei microservizi che interfacciano una base dati esponendo operazioni
CRUD per una o più tabelle o espongono operazioni di interfacciamento
con views o stored procedures (Rosso)
• Di interfaccia funzionale
• Quei microservizi che espongono operazioni per integrare software
esterni attraverso interfacce ben definite o attraverso chiamate in
sequenza agli stessi (Giallo)
• Di orchestazione
• Quei microservizi che implementano flussi aziendali orchestrando le
operazioni esposte da altri servizi Jolie (Verde)
10. Progetto di integrazione Arxivar
(Documentale)
RFC Server
Workflow
Mapper
Arxivar
Service
SAP
RFC
Client
A
R
X
V
A
R
ArchiveLink
Connettore
Cubo
File Importar
Recovery
Service
HTTP
SOAP
Document
Updater
HTTP
11. Che carichi può supportare
Lettura Singolo Documento Scrittura Singolo
documento
Aggiornamento
Stato Documento
Numero di
doumenti al
mese
ArchiveLink 1 1 500*
RFC Server 1 1800*
Workflow 1 1
Mapper 1
RFC Client 2 2
Document Updater 1 500*
Arxivar Service 1 (4) 1(6)
Cubo Connector 1 300*
File Importar 1 5000*
12. Progetto di integrazione Arxivar/Upgrade
L’architettura a microservizi ha permesso di inserire nuovi microservizi
con estrema facilità
Cubo Connector due giornate uomo ( con la definizione di interfaccia e test )
Test anche condotti indipendentemente dal chiamante
File Importer una 2 giornate uomo
Questo perché non devo validare il flusso a valle del chiamante perché
già in uso
13. Progetto Portale manutenzione
• Poligrafici Editoriali : come qualsiasi azienda di produzione ha un estremo
bisogno di gestire in maniera efficiente gli avvisi di manutenzione
• Dopo aver concluso il progetto PM (Plant Managment in SAP) è nata l’esigenza di
fornire agli addetti alla manutenzione un punto di segnalazione di facile utilizzo
che potesse operare in maniera asincrona a SAP
• In un secondo momento è nata la necessità di fornire uno strumento di
monitoraggio della situazione degli avvisi accessibile attraverso piattaforma
mobile
14. Progetto Portale manutenzione
RFC Server
SAP
RFC
ClientLeorando
Maintance
Service
Leorando
Per
Android
Account
Manager
DB
HTTP (REST) HTTP(REST)
Maintance
Workflow
LDAP Service
Syncronizer
15. Progetto Portale manutenzione
Servizio Giornate Uomo Vantaggi
RFC Server 1 giornata uomo Flussi sincronizzati con sap
RFC Client 2 giornate uomo ( 1 ½ ABAP) Punto di raccolta dati da SAP
Maitanance Service 4 giornate uomo Servizio che gestisce le vere e
proprie richieste di manutenzione
Maintanance Workflow 2 giornate uomo Definizione dei flussi per la
manutenzione
Syncronizer 1 ½ giornata uomo Mantiene le anagrafiche
sincronizzate del portale con
quelle di SAP
Account Manager 6 giornate uomo Servizio per definire i permessi di
accesso e visibilità ( con
applicazione web di supporto)
16. Leonardo WebServer a microservizio
• Tradizionalmente per esporre servizi rest o applicativi Web abbiamo
bisogno di strumenti come Tomcat o GlassFish
• Rimanendo fedeli al paradigma a microservizi anche Jolie ha un
WebServer standard chiamato Leonardo
• Leonardo permette di recuperare i file necessari per la web
application (HTML, CSS )
• Leonardo permette di esporre Web Service ( Rest/Soap)
• Risultato di tutto ciò è la possibilità di utilizzare Leonardo come
espositore di servizi e delegare all’ esterno lo sviluppo delle interfacce
HTML5 o affini
17. Progetto Portale manutenzione
Risultati operativi
• Ha permesso a 48 utenti di operare indipendentemente da SAP
• Riduzione di licenze utilizzate
• Riduzione massiva delle problematiche della gestione utenti SAP
• Ha permesso di utilizzare le credenziali di dominio degli utenti per accedere al
portale
• Ha permesso di limitare l’area di competenza dei segnalatori guasti delimitando
le line di produzione o reparti a loro assegnati
• Ha permesso di aprire più di 3000 richieste di assistenza
• E’ previsto un aumento di richiesta ora che lo stesso meccanismo è stato
attivato anche per la manutenzione degli stabili
18. Progetto Hr
• La gestione personale (paghe presenze e contratti) avviene grazie INAZ un
software dedicato.
• La necessità di portare in conservazione sostituiva i LUL CU e 730 ha richiesto lo
sviluppo di un applicativo di controllo per garantire che tutti i documenti fossero
stati caricati correttamente in Arxivar ( Documentale)
• La necessità di gestire le presenze le maggiorazioni e assenze dei turnisti ha
richiesto di sviluppare un applicativo che gestisse via web l’inserimento e la
gestione delle stato autorizzativo
19. Controllo per archiviazione sostitutiva documenti HR
Account
Manager
DB
LDAP Service
Arxivar
Service
LeorandoA
R
X
V
A
R
HTTP(REST)
20. Controllo per archiviazione sostitutiva documenti HR
Impatto operativo
• Ha permesso all’operatore di caricare un file di riepilogo stampa INAZ in
maniera sicura attraverso interfaccia WEB con controllo di validità file.
• L’operatore può procedere con il caricamento di n files anche se è ancora in
corso l’elaborazione dei precedenti
• Alla fine dell’elaborazione l’operatore riceve una mail riassuntiva dei
documenti non presenti o con errori formali (numerazione inail)
• I documenti presenti sono segnati sul documentale come pronti da
archiviare
21. Gestione timbrature e turni
Account
Manager
DB
LDAP Service
DipendentiService
Leonardo
TimbratureService
DB
timbrature
ESB
SchedulerService
HTTP(REST)
INAZ
22. Gestione timbrature e turni
Output operativo sperato ( GoLive Gen 17)
• Eliminazione di file excel per gestire timbrature e turni
• Problemi di versione file corrotti autorizzazioni cartelle ecc
• Problemi di sovrascrittura e di visibilità dei dati contenuti
• Possibilità di definire ruoli e funzioni del flusso approvativo delle presenze
• Possibilità di limitare la visibilità di aree definendoli come proprietà dell’
utente
• Possibilità di modificare il flusso operativo d’approvazione in maniera
rapida quasi a livello di customizzazione
24. Jolie Enterprise
Risultati operativi
• Linearizzato il processo di sviluppo con gestione delle versioni in ambienti
separati ( test/ produzione)
• Parametrizzazione dei servizi attraverso interfaccia web
• Log di tutti flussi con possibilità di ricerca dei singoli eventi per ogni
microservizio coinvolto ( 70000* record alla settimana)
• Centralizzazione della gestione dell’errore con possibilità di definire
centralmente il comportamento di compensazione
25. Project Pipeline
• Progetto collaboratori
• Una soluzione a microservizi per gestire linearmente l’anagrafica
collaboratori con relativi contratti
• Progetto marketing
• Gestione dei di fidelizzazione del cliente e gestione del fatturazione da
portale e-commerce
• Progetto sincronizzazione dei dati clienti in un master data db ( multipli punti
di accesso per un singolo db)