SlideShare a Scribd company logo
1 of 10
Download to read offline
H2B e i microservices:
un caso di successo
H2B e i microservices
• Chi siamo
• Come i microservices ci hanno aiutato
• Cosa abbiamo fatto
• Come lo abbiamo fatto
• Alcuni dati
H2B e i microservices
Chi siamo
H2B è un’azienda che opera per un gruppo di aziende operanti nel settore della
distribuzione di prodotti di ferramenta (La Ferramenta, Sodifer e Packcenter) e si
occupa della gestione di tutto il comparto IT (gestionale, hardware e servizi di rete).
Attualmente siamo 5 addetti che coprono le necessità di circa 250 utenti.
La collaborazione con Italiana Software è nata nel 2011 quando la proprietà decide
di sostituire il programma agenti, che utilizza per tutta la forza vendita per la
ricezione degli ordini. Dopo varie analisi, abbiamo optato per scrivere tutto il
programma in java, e la scelta è caduta su Italiana Software.
H2B e i microservices
Come i microservices ci hanno aiutato
• Flessibilità nella gestione delle sincronie: una volta impostati i tipi delle tabelle da
importare, basta scrivere (o modificare) le query che estraggono i dati e li
scrivono
• Facilità di apprendimento del linguaggio
• Possibilità di sviluppare i servizi in maniera indipendente (più programmatori
possono sviluppare servizi diversi)
• Semplicità nella creazione di sistemi di sincronia anche complessi
• Possibilità di utilizzo dei servizi in più di un contesto
• Utilizzo dei miscroservizi in ambienti di test e di produzione
• Possibilità di gestire i servizi sotto svn
H2B e i microservices
Come i microservices ci hanno aiutato
• Pro:
• Facilità di apprendimento del linguaggio
• Possibilità di sdoppiamento ambienti (test/produzione)
• Contro:
• Editor di testo migliorabile
• Debug gestibile solo tramite stampe da console
H2B e i microservices
Cosa abbiamo fatto
• Applicazione agenti (GiraNg)
• Motori di sincronia da ERP (sistema IBM iSeries con DB2 400) a db collettore per
gli agenti (sistema linux con PostgreSql) e viceversa
• Motori di sincronia da db collettore a pc agenti e viceversa
• Portale aziendale per commercio B2B
H2B e i microservices
Come lo abbiamo fatto
• Sincronia tra ERP e database collettore dei dati (jolie)
• Sincronia tra db collettore dei dati e pc agenti (jolie)
• Sincronia tra pc agenti e db collettore dati (jolie + jolie2java)
• Sincronia tra tra db collettore e ERP (jolie)
• Utilizzo (tramite javaServices) del codice scritto per il programma agenti per la
gestione del portale (stesse classi usate in entrambi i casi)
• Gestione di tutta la parte di frontend del portale (leonardo + jolie)
H2B e i microservices
Esempio di sincronia
INTERNET
DB
Postgres
PC Agenti
iSeries
Servizi jolie sempre attivi.
Un servizio riceve gli ordini
dagli agenti, successivamente
li invia ad altri 2 servizi che li
scrivono su Postgresql e
iSeries.
Lo stesso servizio gestisce le
richieste di aggiornamento.
Programma
agenti scritto in
java con
chiamate ai
servizi sul server
Invio degli ordini
Richiesta
aggiornamenti
Ricezione
aggiornamenti
H2B e i microservices
Schema portale
DB
Postgres
iSeries
Servizi jolie dedicati al portale.
Agganciano i dati direttamente dal
db Postgresql o da iSeries e li
espongono al portale.
Tramite javaServices riutilizzo
classi scritte per programma
agenti (validazione promo, prezzi,
ecc..)
LEONARDO web server
H2B e i microservices
Alcuni dati
• Circa 100 utenti che utilizzano il programma agenti (sia in versione offline che in
versione online)
• Circa 4.000.000 di righe documenti trasmesse dagli agenti per ogni azienda
(senza averne persa una) dal 2012 ad oggi
• Catalogo sul portale con circa 30.000 referenze per azienda
• Più di 500.000 ricerche effettuate sul portale
• Circa 1800 utenti registrati al portale
• Più di 10.000 ordini inviati dal portale in un anno

More Related Content

Viewers also liked

SVILUPPARE E GESTIRE ARCHITETTURE A MICROSERVIZI SU AZURE
SVILUPPARE E GESTIRE ARCHITETTURE A MICROSERVIZI SU AZURESVILUPPARE E GESTIRE ARCHITETTURE A MICROSERVIZI SU AZURE
SVILUPPARE E GESTIRE ARCHITETTURE A MICROSERVIZI SU AZUREDotNetCampus
 
Communicating Sequential Processes (CSP) in JavaScript
Communicating Sequential Processes (CSP) in JavaScriptCommunicating Sequential Processes (CSP) in JavaScript
Communicating Sequential Processes (CSP) in JavaScriptMax Klymyshyn
 
PiterPy 2016: Parallelization, Aggregation and Validation of API in Python
PiterPy 2016: Parallelization, Aggregation and Validation of API in PythonPiterPy 2016: Parallelization, Aggregation and Validation of API in Python
PiterPy 2016: Parallelization, Aggregation and Validation of API in PythonMax Klymyshyn
 
Introduzione ai Microservices
Introduzione ai MicroservicesIntroduzione ai Microservices
Introduzione ai MicroservicesDaniele Mondello
 
Embedding Java code in a Jolie Service
Embedding Java code in a Jolie ServiceEmbedding Java code in a Jolie Service
Embedding Java code in a Jolie ServiceJolieLang
 
Running Javascript as a microservice inside of Jolie
Running Javascript as a microservice inside of JolieRunning Javascript as a microservice inside of Jolie
Running Javascript as a microservice inside of JolieJolieLang
 
IoT and Microservice
IoT and MicroserviceIoT and Microservice
IoT and Microservicekgshukla
 
Vision of a microservice revolution
Vision of a microservice revolutionVision of a microservice revolution
Vision of a microservice revolutionJolieLang
 
Symfony in microservice architecture
Symfony in microservice architectureSymfony in microservice architecture
Symfony in microservice architectureDaniele D'Angeli
 
SOA with PHP and Symfony
SOA with PHP and SymfonySOA with PHP and Symfony
SOA with PHP and SymfonyMichalSchroeder
 
Microservice Architecture JavaCro 2015
Microservice Architecture JavaCro 2015Microservice Architecture JavaCro 2015
Microservice Architecture JavaCro 2015Nenad Pecanac
 

Viewers also liked (11)

SVILUPPARE E GESTIRE ARCHITETTURE A MICROSERVIZI SU AZURE
SVILUPPARE E GESTIRE ARCHITETTURE A MICROSERVIZI SU AZURESVILUPPARE E GESTIRE ARCHITETTURE A MICROSERVIZI SU AZURE
SVILUPPARE E GESTIRE ARCHITETTURE A MICROSERVIZI SU AZURE
 
Communicating Sequential Processes (CSP) in JavaScript
Communicating Sequential Processes (CSP) in JavaScriptCommunicating Sequential Processes (CSP) in JavaScript
Communicating Sequential Processes (CSP) in JavaScript
 
PiterPy 2016: Parallelization, Aggregation and Validation of API in Python
PiterPy 2016: Parallelization, Aggregation and Validation of API in PythonPiterPy 2016: Parallelization, Aggregation and Validation of API in Python
PiterPy 2016: Parallelization, Aggregation and Validation of API in Python
 
Introduzione ai Microservices
Introduzione ai MicroservicesIntroduzione ai Microservices
Introduzione ai Microservices
 
Embedding Java code in a Jolie Service
Embedding Java code in a Jolie ServiceEmbedding Java code in a Jolie Service
Embedding Java code in a Jolie Service
 
Running Javascript as a microservice inside of Jolie
Running Javascript as a microservice inside of JolieRunning Javascript as a microservice inside of Jolie
Running Javascript as a microservice inside of Jolie
 
IoT and Microservice
IoT and MicroserviceIoT and Microservice
IoT and Microservice
 
Vision of a microservice revolution
Vision of a microservice revolutionVision of a microservice revolution
Vision of a microservice revolution
 
Symfony in microservice architecture
Symfony in microservice architectureSymfony in microservice architecture
Symfony in microservice architecture
 
SOA with PHP and Symfony
SOA with PHP and SymfonySOA with PHP and Symfony
SOA with PHP and Symfony
 
Microservice Architecture JavaCro 2015
Microservice Architecture JavaCro 2015Microservice Architecture JavaCro 2015
Microservice Architecture JavaCro 2015
 

H2B e i microservices: un caso di successo

  • 1. H2B e i microservices: un caso di successo
  • 2. H2B e i microservices • Chi siamo • Come i microservices ci hanno aiutato • Cosa abbiamo fatto • Come lo abbiamo fatto • Alcuni dati
  • 3. H2B e i microservices Chi siamo H2B è un’azienda che opera per un gruppo di aziende operanti nel settore della distribuzione di prodotti di ferramenta (La Ferramenta, Sodifer e Packcenter) e si occupa della gestione di tutto il comparto IT (gestionale, hardware e servizi di rete). Attualmente siamo 5 addetti che coprono le necessità di circa 250 utenti. La collaborazione con Italiana Software è nata nel 2011 quando la proprietà decide di sostituire il programma agenti, che utilizza per tutta la forza vendita per la ricezione degli ordini. Dopo varie analisi, abbiamo optato per scrivere tutto il programma in java, e la scelta è caduta su Italiana Software.
  • 4. H2B e i microservices Come i microservices ci hanno aiutato • Flessibilità nella gestione delle sincronie: una volta impostati i tipi delle tabelle da importare, basta scrivere (o modificare) le query che estraggono i dati e li scrivono • Facilità di apprendimento del linguaggio • Possibilità di sviluppare i servizi in maniera indipendente (più programmatori possono sviluppare servizi diversi) • Semplicità nella creazione di sistemi di sincronia anche complessi • Possibilità di utilizzo dei servizi in più di un contesto • Utilizzo dei miscroservizi in ambienti di test e di produzione • Possibilità di gestire i servizi sotto svn
  • 5. H2B e i microservices Come i microservices ci hanno aiutato • Pro: • Facilità di apprendimento del linguaggio • Possibilità di sdoppiamento ambienti (test/produzione) • Contro: • Editor di testo migliorabile • Debug gestibile solo tramite stampe da console
  • 6. H2B e i microservices Cosa abbiamo fatto • Applicazione agenti (GiraNg) • Motori di sincronia da ERP (sistema IBM iSeries con DB2 400) a db collettore per gli agenti (sistema linux con PostgreSql) e viceversa • Motori di sincronia da db collettore a pc agenti e viceversa • Portale aziendale per commercio B2B
  • 7. H2B e i microservices Come lo abbiamo fatto • Sincronia tra ERP e database collettore dei dati (jolie) • Sincronia tra db collettore dei dati e pc agenti (jolie) • Sincronia tra pc agenti e db collettore dati (jolie + jolie2java) • Sincronia tra tra db collettore e ERP (jolie) • Utilizzo (tramite javaServices) del codice scritto per il programma agenti per la gestione del portale (stesse classi usate in entrambi i casi) • Gestione di tutta la parte di frontend del portale (leonardo + jolie)
  • 8. H2B e i microservices Esempio di sincronia INTERNET DB Postgres PC Agenti iSeries Servizi jolie sempre attivi. Un servizio riceve gli ordini dagli agenti, successivamente li invia ad altri 2 servizi che li scrivono su Postgresql e iSeries. Lo stesso servizio gestisce le richieste di aggiornamento. Programma agenti scritto in java con chiamate ai servizi sul server Invio degli ordini Richiesta aggiornamenti Ricezione aggiornamenti
  • 9. H2B e i microservices Schema portale DB Postgres iSeries Servizi jolie dedicati al portale. Agganciano i dati direttamente dal db Postgresql o da iSeries e li espongono al portale. Tramite javaServices riutilizzo classi scritte per programma agenti (validazione promo, prezzi, ecc..) LEONARDO web server
  • 10. H2B e i microservices Alcuni dati • Circa 100 utenti che utilizzano il programma agenti (sia in versione offline che in versione online) • Circa 4.000.000 di righe documenti trasmesse dagli agenti per ogni azienda (senza averne persa una) dal 2012 ad oggi • Catalogo sul portale con circa 30.000 referenze per azienda • Più di 500.000 ricerche effettuate sul portale • Circa 1800 utenti registrati al portale • Più di 10.000 ordini inviati dal portale in un anno