- MicroServices, le dimensioni non contano
- Wildfly Swarm, Spring Boot & Vertx.io: il nuovo che avanza
- Microservices con JBoss EAP 7: innovare in continuità
- Microregole per grandi progetti con il BRMS
- Integrazione e microservizi: come un cammello può passare dalla cruna di un ago
- API Management con 3Scale nell’era dei microservizi
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...Codemotion
Realizzare un’unica piattaforma che garantisce Omni-channel, Zero-downtime, Functional-decomposition e Auto-scaling è possibile? Vi raccontiamo un caso reale di come, utilizzando Zuul, Eureka, SpringBoot, Docker abbiamo realizzato i desideri del cliente e attuato questa trasformazione.
Molte aziende hanno costruito negli anni sistemi informatici complessi che gestiscono i processi interni e i processi di gestione i clienti/fornitori. Con il cambiamento delle abitudini dei consumatori quello che una volta si faceva intermediato da un agente, commesso o addetto che usava il sistema gestionale per rispondere alla richiesta del cliente ora si fa in modalità self service semplicemente con uno smartphone, il cliente si aspetta di essere autonomo nel rapporto con l’azienda. L’esperienza che ci si aspetta come consumatore è quella che si vive usando piattaforma native digitali come ad esempio Netflix e Spotify. Il problema è che la maggior parte delle aziende non è partita nativamente digitale e non è possibile azzerare tutto e ripartire da capo senza correre rischi di business continuity importanti che vedono milioni di clienti coinvolti e impatti significativi a livello economico in caso di down. Se non è possibile ripartire da zero, quindi come fare? Una risposta è un approccio graduale di evoluzione architetturale e tecnologica dove Kubernetes, e il suo ecosistema, giocano un ruolo chiave. In questa presentazione vedremo i tre principi cardine sulla quale si basa questa strategia: API as a Product; architetture evolutive; fast data con pattern CQRS; che si uniscono per creare una strategia di Modernizzazione delle Applicazioni utilizzando i componenti dell’ecosistema del landscape CNCF (https://landscape.cncf.io). Da qui capiremo quali siano i benefici nel breve, medio e lungo termine e quali passi iniziare a fare per avviare questa strategia.
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...Codemotion
Realizzare un’unica piattaforma che garantisce Omni-channel, Zero-downtime, Functional-decomposition e Auto-scaling è possibile? Vi raccontiamo un caso reale di come, utilizzando Zuul, Eureka, SpringBoot, Docker abbiamo realizzato i desideri del cliente e attuato questa trasformazione.
Molte aziende hanno costruito negli anni sistemi informatici complessi che gestiscono i processi interni e i processi di gestione i clienti/fornitori. Con il cambiamento delle abitudini dei consumatori quello che una volta si faceva intermediato da un agente, commesso o addetto che usava il sistema gestionale per rispondere alla richiesta del cliente ora si fa in modalità self service semplicemente con uno smartphone, il cliente si aspetta di essere autonomo nel rapporto con l’azienda. L’esperienza che ci si aspetta come consumatore è quella che si vive usando piattaforma native digitali come ad esempio Netflix e Spotify. Il problema è che la maggior parte delle aziende non è partita nativamente digitale e non è possibile azzerare tutto e ripartire da capo senza correre rischi di business continuity importanti che vedono milioni di clienti coinvolti e impatti significativi a livello economico in caso di down. Se non è possibile ripartire da zero, quindi come fare? Una risposta è un approccio graduale di evoluzione architetturale e tecnologica dove Kubernetes, e il suo ecosistema, giocano un ruolo chiave. In questa presentazione vedremo i tre principi cardine sulla quale si basa questa strategia: API as a Product; architetture evolutive; fast data con pattern CQRS; che si uniscono per creare una strategia di Modernizzazione delle Applicazioni utilizzando i componenti dell’ecosistema del landscape CNCF (https://landscape.cncf.io). Da qui capiremo quali siano i benefici nel breve, medio e lungo termine e quali passi iniziare a fare per avviare questa strategia.
Le architetture stanno giungendo ad un punto di svolta epocale spinti dalle esigenze del business di offrire più prodotti in tempi sempre più ridotti. Da qui l’esigenza di ripensare il concetto di architettura di back-end verso un approccio più adattivo con la conseguente necessità di dover adeguare completamente il parco applicativo legacy. Vi racconteremo come affrontare questo percorso.
Contattaci per partire insieme a noi: sales@emerasoft.com
Come i Microservizi favoriscono il lavoro dei Feature TeamsGiulio Roggero
In un contesto Agile i Feature Teams sono una delle strutture organizzative più efficaci per sviluppare un ecosistema complesso in modo rapido, mantenendo alta la qualità e basso il TCO (total cost of ownership). Spesso questi team sono però vincolati da architetture monolitiche, o a lasagna/spaghetti, che non consentono di operare end-to-end sulle feature, creando dipendenze tra team, colli di bottiglia e frustrazione. Lo stile architetturale a Microservizi (sì, è uno stile e non un pattern e quindi va interpretato a seconda dei casi) da una mano a questi team ad essere più indipendenti tra loro e li aiuta a lavorare tutti con lo stesso scopo: generare valore per gli utenti finali in modo continuo. In questo talk vedremo come organizzare più team che lavorano su uno stesso prodotto e come lo stile architetturale a Microservizi supporti questa organizzazione evolvendo con l'evolversi dei team.
Presentazione alla Google Dev Fest Mediterranean 2016 di Catania con presentazione sulle metodologie di utilizzo di microservices e sui sistemi per monitorare le infrastrutture
E se vi chiedessi:
Cosa lega le ultime tendenze del cloud alla programmazione degli anni 80?
Quali sono le cose realmente importanti da tenere a mente quando si realizza un'applicazione?
Qual'è la strategia migliore per "inseguire professionalmente" le novità e non diventare rapidamente "obsoleto"?
Cosa si intende per "Pensiero Analogico e Azione Digitale"?
Questo e altro nel nuovo seminario di Pasquale Camastra (che si terrà presso la nostra sede il 14/09/2017 alle ore 17:30), che, questa volta nelle vesti di Evolutionary Architect, racconterà come affrontare le nuovissime tendenze delle Architetture Applicative in Cloud con lo spirito pionieristico di chi ha conosciuto l'informatica grazie al Commodor 64
Software modularity, microservices ed headless platform all in one. Liferay: ...Commit University
In un mercato dove il time-to-market regola la vita di ogni sviluppatore, affidarsi a strumenti e tecnologie che aumentano la qualità del nostro lavoro e ci permettano di fare di più in meno tempo è fondamentale.
In questo workshop abbiamo visto insieme come Liferay può esserci d’aiuto per progettare e realizzare moderne esperienze online… Ma con uno sforzo minimo!
… Ovviamente dal punto di vista dello sviluppatore!
Approccio ad una infrastruttura per MicroserviceDaniele Mondello
Preentazione effettuata al Cnu Linux Meeting 2016 nel quale vine descritto un "approccio ad una infrastruttura per Microservices".Vengono descritte diverse tecnologie a supporto come RabbitMQ, Jenkins, Doickers.
Torniamo ad essere essenziali, solo quello che serve alle Aziende, niente di più! Netspin Lab presenta Gas Portal, il portale delle soluzioni per la PMI.
CRM, ERP, Sistemi Informativi, Gestione della qualità, Non Conformità e reclami, Offerte Commerciali, Gestione forza vendita, Cruscotto manageriale, Progetti, Gantt, Forum, Agende condivise.
Soluzioni custom
Anche voi siete in piena "APIFICATION"? Riccardo ci svela tutti i segreti per rilasciare API di successo. #apistrategy
Per ulteriori informazioni scrivi a wso2.sales@profesia.it
MySQL Day Roma 2019 - Le architetture a microservizi e MySQLPar-Tec S.p.A.
In occasione del MySQL Day 2019 di Roma il TechAdvisor Michelangelo Uberti e Marco Carlessi - MySQL Principal Sales Consultant di Oracle - hanno fornito una panoramica sui concetti chiave, sui benefici e sulle opportunità offerte dalle architetture a microservizi.
I punti trattati durante la presentazione sono:
- Le architetture a microservizi
- Dai monoliti ai microservizi
- Un esempio concreto: Netflix
- Architetture a microservizi: vantaggi e punti di attenzione
- Dalla virtualizzazione ai container
- Containerizzazione: vantaggi e punti di attenzione
- Come superare i limiti dei container
- MySQL e le architetture a microservizi
- Microservizi e i dati
- Microservizi e database: due approcci
- MySQL può girare dentro i container
- Deploy MySQL 8.0 con Docker
- Oracle MySQL Operator for Kubernetes (Alpha)
- MySQL 8.0: un multi-model DB
- MySQL Enterprise licensing
Per saperne di più, scaricate le slide e guardate il video della presentazione del nostro TechAdvisor su https://www.par-tec.it/le-architetture-a-microservizi-e-mysql
Lo Spring Framework viene ancora una volta incontro agli sviluppatori Java semplificandone la vita, questa volta vedremo come implementare facilmente uno strato servizi stateless da rendere disponibile remotamente nei diversi formati fruibili dalle diverse tecnologie client RIA, introducendo i concetti di Exporter e Proxy di Spring Remoting. Tutto questo tramite pura configurazione, via XML o annotation a seconda dei gusti, e con un esempio specifico in Flex con Spring BlazeDS Integration.
Le architetture stanno giungendo ad un punto di svolta epocale spinti dalle esigenze del business di offrire più prodotti in tempi sempre più ridotti. Da qui l’esigenza di ripensare il concetto di architettura di back-end verso un approccio più adattivo con la conseguente necessità di dover adeguare completamente il parco applicativo legacy. Vi racconteremo come affrontare questo percorso.
Contattaci per partire insieme a noi: sales@emerasoft.com
Come i Microservizi favoriscono il lavoro dei Feature TeamsGiulio Roggero
In un contesto Agile i Feature Teams sono una delle strutture organizzative più efficaci per sviluppare un ecosistema complesso in modo rapido, mantenendo alta la qualità e basso il TCO (total cost of ownership). Spesso questi team sono però vincolati da architetture monolitiche, o a lasagna/spaghetti, che non consentono di operare end-to-end sulle feature, creando dipendenze tra team, colli di bottiglia e frustrazione. Lo stile architetturale a Microservizi (sì, è uno stile e non un pattern e quindi va interpretato a seconda dei casi) da una mano a questi team ad essere più indipendenti tra loro e li aiuta a lavorare tutti con lo stesso scopo: generare valore per gli utenti finali in modo continuo. In questo talk vedremo come organizzare più team che lavorano su uno stesso prodotto e come lo stile architetturale a Microservizi supporti questa organizzazione evolvendo con l'evolversi dei team.
Presentazione alla Google Dev Fest Mediterranean 2016 di Catania con presentazione sulle metodologie di utilizzo di microservices e sui sistemi per monitorare le infrastrutture
E se vi chiedessi:
Cosa lega le ultime tendenze del cloud alla programmazione degli anni 80?
Quali sono le cose realmente importanti da tenere a mente quando si realizza un'applicazione?
Qual'è la strategia migliore per "inseguire professionalmente" le novità e non diventare rapidamente "obsoleto"?
Cosa si intende per "Pensiero Analogico e Azione Digitale"?
Questo e altro nel nuovo seminario di Pasquale Camastra (che si terrà presso la nostra sede il 14/09/2017 alle ore 17:30), che, questa volta nelle vesti di Evolutionary Architect, racconterà come affrontare le nuovissime tendenze delle Architetture Applicative in Cloud con lo spirito pionieristico di chi ha conosciuto l'informatica grazie al Commodor 64
Software modularity, microservices ed headless platform all in one. Liferay: ...Commit University
In un mercato dove il time-to-market regola la vita di ogni sviluppatore, affidarsi a strumenti e tecnologie che aumentano la qualità del nostro lavoro e ci permettano di fare di più in meno tempo è fondamentale.
In questo workshop abbiamo visto insieme come Liferay può esserci d’aiuto per progettare e realizzare moderne esperienze online… Ma con uno sforzo minimo!
… Ovviamente dal punto di vista dello sviluppatore!
Approccio ad una infrastruttura per MicroserviceDaniele Mondello
Preentazione effettuata al Cnu Linux Meeting 2016 nel quale vine descritto un "approccio ad una infrastruttura per Microservices".Vengono descritte diverse tecnologie a supporto come RabbitMQ, Jenkins, Doickers.
Torniamo ad essere essenziali, solo quello che serve alle Aziende, niente di più! Netspin Lab presenta Gas Portal, il portale delle soluzioni per la PMI.
CRM, ERP, Sistemi Informativi, Gestione della qualità, Non Conformità e reclami, Offerte Commerciali, Gestione forza vendita, Cruscotto manageriale, Progetti, Gantt, Forum, Agende condivise.
Soluzioni custom
Anche voi siete in piena "APIFICATION"? Riccardo ci svela tutti i segreti per rilasciare API di successo. #apistrategy
Per ulteriori informazioni scrivi a wso2.sales@profesia.it
MySQL Day Roma 2019 - Le architetture a microservizi e MySQLPar-Tec S.p.A.
In occasione del MySQL Day 2019 di Roma il TechAdvisor Michelangelo Uberti e Marco Carlessi - MySQL Principal Sales Consultant di Oracle - hanno fornito una panoramica sui concetti chiave, sui benefici e sulle opportunità offerte dalle architetture a microservizi.
I punti trattati durante la presentazione sono:
- Le architetture a microservizi
- Dai monoliti ai microservizi
- Un esempio concreto: Netflix
- Architetture a microservizi: vantaggi e punti di attenzione
- Dalla virtualizzazione ai container
- Containerizzazione: vantaggi e punti di attenzione
- Come superare i limiti dei container
- MySQL e le architetture a microservizi
- Microservizi e i dati
- Microservizi e database: due approcci
- MySQL può girare dentro i container
- Deploy MySQL 8.0 con Docker
- Oracle MySQL Operator for Kubernetes (Alpha)
- MySQL 8.0: un multi-model DB
- MySQL Enterprise licensing
Per saperne di più, scaricate le slide e guardate il video della presentazione del nostro TechAdvisor su https://www.par-tec.it/le-architetture-a-microservizi-e-mysql
Lo Spring Framework viene ancora una volta incontro agli sviluppatori Java semplificandone la vita, questa volta vedremo come implementare facilmente uno strato servizi stateless da rendere disponibile remotamente nei diversi formati fruibili dalle diverse tecnologie client RIA, introducendo i concetti di Exporter e Proxy di Spring Remoting. Tutto questo tramite pura configurazione, via XML o annotation a seconda dei gusti, e con un esempio specifico in Flex con Spring BlazeDS Integration.
L’approccio IT bimodale, capace di integrare stabilità e sicurezza da un lato e agilità e velocità dall’altro, si configura come soluzione sostenibile per innovare e trasformare il business senza rallentarlo.
Scopri come integrare approccio bimodale e DevOps, per risparmiare tempo, denaro, ridurre i rischi e ottimizzare le risorse.
Segui il webinar on-demand: https://youtu.be/hVJ2Yk6Fd9U
Presentazione per Codemotion Milan 2014
La piattaforma Ubuntu, quali sono le tecnologie utilizzate da Ubuntu per la nuova piattaforma.
Da dove partire a sviluppare nuove app per Ubuntu Touch e Desktop con l'Ubuntu SDK. Piccola introduzione al linguaggio QML.
Come contribuire alle Core Apps e come mettersi in contatto con la community di Ubuntu-it
L’Università di Pisa investe da anni in tecnologie e infrastrutture di rete e può contare su circa 3000 Km di fibra di proprietà, la connettività del progetto GARR-X, un backbone a 10G in MPLS/BGP e l’accesso per la maggior parte degli utenti a 100Mb/s. Tuttavia alla fine del 2012 l’organizzazione dei servizi e della rete all’in- terno del campus era legata ad un modello organizzativo dell’Ateneo dove ogni struttura godeva di autonomia nel gestire le proprie risorse. Questa situazione ha determinanto negli anni un’elevata disomogenità dei servizi e un’eccessiva frammentazione delle risorse sia sul piano tecnico che sul piano amministrativo. Nel 2013 in se- guito alla necessità di razionalizzare le risorse dell’Ateneo è sorta l’esigenza di riprogettare la connettività e i meccanismi di erogazione dei servizi. La presentazione illustra il modello e gli aspetti tecnici del nuovo Servi- zio di Connettività d’Ateneo, in cui l’automazione per una rete vasta e complessa come qeulla dell’Università di Pisa svolge un ruolo determinante.
Il servizio di connettività d’Ateneo (SCA) offre connettività (Wired/Wireless ) e servizi correlati a tutte le strut- ture universitarie ed ai data center dell’Ateneo. Il nuovo modello organizzativo è un sistema composto da 7 Ac- cess Provider e un Carrier: ogni access provider si occupa di gestire la connettività e i servizi per il proprio bacino di utenti, il carrier si occupa di erogare la connettività, fornire le infrastrutture di gestione ed erogazio- ne dei servizi a tutti gli access provider. L’università è stata suddivisa in 7 bacini d’utenza uno per ogni Access Provider, in ogni area è stato definito un dominio di routing nel quale transita il traffico proveniente dalle strut- ture afferenti. Gli apparati di distribuzione su cui insistono i domini di routing sono magliati tra di loro e con i due router che costituiscono il backbone. Ogni router d’area viene affiancato da un nodo delegato ad erogare i servizi secondo una logica multi-tenant.
L’infrastruttura dei servizi di rete (a.k.a. progetto belfagor), consiste di una piattaforma cloud privata i cui nodi sono connessi da un anello in fibra ottica con protezione ERPS, su cui transita esclusivamente traffico di ma- nagement dell’infrastruttura stessa. Ogni componente dell’anello è costituita da due swtich in stack e due nodi della piattaforma di cloud computing basata su KVM/openstack. Ogni nodo di computing esegue le istanze vir- tuali nelle quali sono configurati e attivi i servizi in rapporto 1:1, una istanza un servizio. Si può pensare ai servizi come a delle vere e proprie App, il cui contesto di esecuzione è la piattaforma di cloud, che insieme agli strumenti di automazione effettua il provisioning dei servizi relativi ad un’area specifica.
Le App/Servizi sono idempotenti ovvero non avendo necessità di storage persistente possono essere ricreate infinite volte senza perd
OVERVIEW: Java secondo Microsoft
STRUMENTI:Java nel cloud
MODALITA’: Il Development life cycle secondo Microsoft
APPROCCIO: Stack cloud native basato su JAVA ed Azure
CAMBIAMENTO: Know how necessario per lo sviluppo su AZURE con Java
OPPORTUNITA: Use case di implementazione «first approach»
An overview of technologies and best practices for the development of a full-stack web application using JavaScript. How to realize an entire Application Server with a single programming language, the use of event-driven logic and the potential of Node.js.
MySQL Day Milano 2018 - Le architetture a microserviziPar-Tec S.p.A.
In occasione del MySQL Day 2018 di Milano il TechAdvisor Michelangelo Uberti ha fornito una panoramica sui concetti chiave, sui benefici e sulle opportunità offerte dalle architetture a microservizi.
I punti trattati durante la presentazione sono:
- Presentazione dell’offerta Par-Tec dedicata a MySQL Enterprise Edition
- Dai monoliti ai microservizi
- Un esempio concreto: Netflix
- Architetture a microservizi: vantaggi e punti di attenzione
- Dalla virtualizzazione ai container
- Containerizzazione: vantaggi e punti di attenzione
- Come superare i limiti dei container
- Introduzione al paradigma DevOps
Per saperne di più, scaricate le slide e guardate il video della presentazione del nostro TechAdvisor su https://www.par-tec.it/le-architetture-a-microservizi
IaC - Infrastructure as Code, gestire infrastrutture cloud tramite file di co...Daniele Mondello
Gestire infrastrutture in cloud con la semplicità di scrivere file di configurazione. Tutto ciò grazie a Terraform, soluzione Open Source per gestire infrastrutture cloud indipendentemente dal Cloud.
2.5 tiers is the name of this simple and powerful architecture, based on jquery and RESTful services. In this talk we'll learn how to apply 2.5 tiers in our projects
3. Agenda Middleware Track part 1
● 14.00 MicroServices, le dimensioni non contano
○ Ugo Landini, Samuele Dell’Angelo
● 14.30 Wildfly Swarm, Spring Boot & Vertx.io: il nuovo che avanza
○ Ugo Landini, Samuele Dell’Angelo
● 15.00 Microservices con JBoss EAP 7: innovare in continuità
○ Giuseppe Bonocore
● 15.30 Microregole per grandi progetti con il BRMS
○ Andrea Leoncini
4. Agenda Middleware Track part 2
● 16.00 Integrazione e microservizi: come un cammello può passare dalla
cruna di un ago
○ Filippo Calà, Giuseppe Bonocore
● 16.30 API Management con 3Scale nell’era dei microservizi
○ Luca Bigotta
● 17.00 SALA PLENARIA
● 17.15 ESTRAZIONE FINALE PREMI
11. Cos’è una Microservice Architecture (MSA)?
Un approccio architetturale per decomporre applicazioni complesse in sistemi indipendenti
● Organizzati
per business
capabilities
● Scalabilità
indipendente
● Ciclo di vita
indipendente
● Governo
decentralizzato
● Data management
decentralizzato
12. Cos’è una Microservice Architecture (MSA)?
Picco di
aspettative
gonfiate
x
Disillusione
Qui si fa sul serio
13. Your Journey to Microservices :-)
Self-Service,
On-Demand,
Elastic,
Infrastructure
as
Code
(Cloud)
Re-Org ->
DevOps
Automazione:
Puppet, Chef,
Ansible
e/o
Containers
CI & CD
Deployment
Pipeline
Un
Microservizio
Silicon
Valley
DotCom
Startup
Cos’è una Microservice Architecture (MSA)?
14. 1. Self-Service, on-demand, elastic infrastructure as code
a. Quanti gg per il provisioning di una nuova VM?
2. Dev vs Ops
Chi risponde al telefono se l’app non funziona?
3. Automation
Phoenix vs Snowflake
4. CI & CD
a. Deployment Pipeline
Cos’è una Microservice Architecture (MSA)?
16. A Development / Deployment Time:
● Automation
● Continuous Integration / Delivery
● Configuration Management
● Service / API design
● Rigorous Testing
● Dependency management
● Design for eventual consistency
● Artifact repositories
Container: standardizzazione, automation e
dependency management
User Experience: maggiore produttività per gli sviluppatori
A Runtime:
● Standardization
● Isolation
● Service Discovery
● Load Balancing
● Circuit Breaker, Fallback
● Health checks & automated recovery
● Distributed logging
● Tracing
● Infrastructure Monitoring
17. ● Deploy facile e portabile
● Creato da immagini immutabili e
a strati (layered)
● Isolato dal sistema operativo
dell’host.
I Container impacchettano le applicazioni con le loro
dipendenze, isolando il runtime
Alta densità e massima efficienza
HOST OS
SERVER
CONTAINER
LIBS
APP
CONTAINER
LIBS
APP
19. ● Isolati e sicuri
● Sembrano girare in un loro
ambiente
● Se ne possono far girare
centinaia in una sola macchina
● Le funzionalità sono nel kernel
● Docker è semplicemente un
formato
I Container sono dei semplici processi Linux
Alta densità e massima efficienza
HOST OS
SERVER
CONTAINER
LIBS
APP
CONTAINER
LIBS
APP
20. Kubernetes è un container orchestrator per
le applicazioni (non per le macchine)
Dal greco “pilota”: radice della parola “governatore” (dal latino: gubernator)
Master
Node
Bare Metal Virtual Private Cloud Public Cloud
Storage
Operator
External
Services
21. A Development / Deployment Time:
● Automation
● Continuous Integration / Delivery
● Configuration Management
● Service / API design
● Rigorous Testing
● Dependency management
● Design for eventual consistency
● Artifact repositories
Kubernetes aggiunge caratteristiche
fondamentali per le MSAs (e non solo!)
Kubernetes è la versione open di Borg, il sistema usato internamente da Google per scalare.
A Runtime:
● Standardization
● Isolation
● Service Discovery
● Load Balancing
● Circuit Breaker, Fallback
● Health checks & automated recovery
● Distributed logging
● Tracing
● Infrastructure Monitoring
22.
23. OpenShift Container Platform è la versione
ENTERPRISE di Kubernetes
SERVICE CATALOG
(LANGUAGE RUNTIMES, MIDDLEWARE, DATABASES, …)
SELF-SERVICE
APPLICATION LIFECYCLE MANAGEMENT
(CI / CD)
BUILD AUTOMATION DEPLOYMENT AUTOMATION
CONTAINER CONTAINERCONTAINER CONTAINER CONTAINER
NETWORKING SECURITYSTORAGE REGISTRY
LOGS &
METRICS
CONTAINER ORCHESTRATION & CLUSTER MANAGEMENT
(KUBERNETES)
RED HAT ENTERPRISE LINUX
CONTAINER RUNTIME & PACKAGING
(DOCKER)
ATOMIC HOST
INFRASTRUCTURE AUTOMATION & COCKPIT
24. A Development / Deployment Time:
● Automation
● Continuous Integration / Delivery
● Configuration Management
● Service / API design
● Rigorous Testing
● Dependency management
● Design for eventual consistency
● Artifact repositories
Openshift Container Platform aggiunge
ulteriori servizi per gli sviluppatori
Il developer si deve concentrare solo sul design & development dei microservizi
A Runtime:
● Standardization
● Isolation
● Service Discovery
● Load Balancing
● Circuit Breaker, Fallback
● Health checks & automated recovery
● Distributed logging
● Tracing
● Infrastructure Monitoring
25. Wildfly Swarm, Vertx.io & Spring Boot:
Il nuovo che avanza
Ugo Landini & Samuele Dell’Angelo
#redhatosd
28. DropWizard
www.dropwizard.io
JAX-RS API
Il primo sul mercato
DropWizard Metrics
Embeddable servers:
Jetty
Spring Boot
projects.spring.io/spring-boot
Spring API (@RestController)
‘Starter’ POMs:
start.spring.io
Embeddable servers:
Tomcat, Jetty, Undertow
WildFly Swarm
wildfly-swarm.io
Java EE 7 APIs
‘Starter’ POMs:
wildfly-swarm.io/generator
Embeddable servers:
WildFly (Undertow)
Opinionated & java -jar myapp.jar
29. ● Stesse tecnologie di JBoss, ma diverso punto di vista
● Si “monta” tanto Application Server quanto basta per il servizio
○ MicroProfile 1.0
○ Flat jar
○ Interfaccia web o via JBoss Forge per scegliere cosa serve
30.
31. (Un-Opinionated) Toolkit per applicazioni reactive & async
Low-latency microservices che interagiscono con l’EventBus
Elasticità e resilienza “built-in”
Democratico, parla con tutti (.NET, Go, Ceylon, Rust, Cobol, Java
EE, Spring...)
vertx.io
http://vertx.io/blog/my-first-vert-x-3-application/
42. Red Hat xPaas
Application Server
Pivotal tc Server, VMware vFabric, Oracle WebLogic
Server, IBM WebSphere
JBoss EAP
JBoss Web Server
In-memory data grid
IBM WebSphere eXtreme Scale, Oracle Coherence,
Pivotal GemFire, Software AG Terracotta JBoss Data Grid
Application integration
IBM Integration Bus, Oracle SOA Suite and ESB, MuleSoft
AnyPoint Platform, Sonic ESB, Tibco ActiveMatrix JBoss Fuse
Business rules and
process automation
IBM Operational Decision Manager and BPM, Oracle SOA
Suite and BPM Suite, Pega BPM, FICO Blaze Advisor
JBoss BRMS
JBoss BPM Suite
Messaging
IBM WebSphereMQ, Pivotal RabbitMQ, VMware vFabric,
Tibco Enterprise Message Service JBoss A-MQ
Mobile
IBM MobileFirst, SAP Mobile Platform, Kony Mobility
Platform, Telerik Platform, AnyPresence Mobile Application Platform
Data virtualization and
data services
IBM InfoSphere, Progress DataXtend SI, Composite
Information Server, Denodo JBoss Data Virtualization
45. JBoss Enterprise Application Platform
● Basato su WildFly
○ Hibernate, CXF, Infinispan...
● Utilizzato da migliaia di aziende in
Italia e nel mondo
○ Banking, Telco, Utility, mission
critical
● Semplice e performante
○ Packaging, boot time, performance
#1 Open Source JEE Server
46. Enterprise Application Platform 7
● JEE 7 certified
○ WebSocket, batch, JSon
● Semplificazione
○ Port reduction, graceful shutdown
● Consolidamento
○ Undertow, Artemis
Cosa c’è di nuovo
50. Enterprise Application Platform 7
● Microservizi in Java: UberJar con Hibernate, CXF, Log4j…
○ Il rischio è di ricostruire un application server…
● EAP: Ottimizzato per i Microservizi
○ Boot time in 2 sec (circa), lazy loading modules, 2 (o 1) porte,
containerizzabile, scriptabile
Microservices in JEE ?!?!
51. Enterprise Application Platform 7
● Riutilizzo di codice e skills
○ JEE features in un microservizio
(Clustering con OSE !)
● Hipster ready :-)
○ Wildfly Swarm, JS Server side
Microservices in JEE ?!?!
53. Enterprise Application Platform 7
Red Hat xPaas
Enterprise Application Platform
JBoss Web Server (Tomcat)
JBoss Data Grid
JBoss Developer Studio
Fuse
A-MQ
Data Virtualization *
Business Process
Management *
Business Rules
Management System
Red Hat Mobile /
FeedHenry
Application
Container Services
Integration
Services
Business
Process Services
Mobile
Services
* Coming Soon
54. Enterprise Application Platform 7
Red Hat xPaas
OPENSHIFT CONTAINER PLATFORM
Red Hat Enterprise Linux Red Hat Enterprise Linux Red Hat Enterprise Linux
Container ContainerJBoss
EAP
JBoss
Data Grid
JBoss
Fuse
Container JBoss
A-MQ
ContainerJBoss
BRMS
ORCHESTRATION
74. Red Hat xPaas
Application Server
Pivotal tc Server, VMware vFabric, Oracle WebLogic
Server, IBM WebSphere
JBoss EAP
JBoss Web Server
In-memory data grid
IBM WebSphere eXtreme Scale, Oracle Coherence,
Pivotal GemFire, Software AG Terracotta JBoss Data Grid
Application integration
IBM Integration Bus, Oracle SOA Suite and ESB, MuleSoft
AnyPoint Platform, Sonic ESB, Tibco ActiveMatrix JBoss Fuse
Business rules and
process automation
IBM Operational Decision Manager and BPM, Oracle SOA
Suite and BPM Suite, Pega BPM, FICO Blaze Advisor
JBoss BRMS
JBoss BPM Suite
Messaging
IBM WebSphereMQ, Pivotal RabbitMQ, VMware vFabric,
Tibco Enterprise Message Service JBoss A-MQ
Mobile
IBM MobileFirst, SAP Mobile Platform, Kony Mobility
Platform, Telerik Platform, AnyPresence Mobile Application Platform
Data virtualization and
data services
IBM InfoSphere, Progress DataXtend SI, Composite
Information Server, Denodo JBoss Data Virtualization
77. La comunità Drools
Workbench (web UI per la redazione e la
gestione delle regole)
Expert (Rule Engine)
Fusion (CEP, Complex Event Processing)
jBPM (integrazione con processi)
OptaPlanner (pianificazione delle risorse)
78. Cos’è un motore di regole (Rule Engine)?
A business rules engine is a software system that executes one or
more business rules in a runtime production environment. The rules
might come from legal regulation ("An employee can be fired for any
reason or no reason but not for an illegal reason"), company policy ("All
customers that spend more than $100 at one time will receive a 10%
discount"), or other sources.
A business rule system enables these company policies and other
operational decisions to be defined, tested, executed and maintained
separately from application code.
Source: wikipedia
79. DROOLS/Red Hat JBoss BRMS
● Vantaggi di un Motore di Regole:
○ Permette di dire "COSA fare", e non "COME farlo".
○ Separazione della logica e dei dati
○ Centralizzazione della conoscenza
○ Integrazione dei Tool
○ Regole Understandable
○ Velocità e Scalabilità
80. Quando dovreste usare Red Hat JBoss BRMS
● Scenari molto complessi, difficili da definire anche per i business
experts
● Non esiste o non è noto un ben definito algoritmo
● Requisiti che hanno bisogno di essere modificati molto spesso
● Necessità di prendere decisioni molto velocemente, spesso su set
di dati non completi
81. rule "Sound the alarm"
when
$f : FireDetected( )
not( SprinklerActivated() )
then
// sound the alarm
end
Una semplice regola
Una semplice regola CEP, senza il concetto di tempo
82. rule "Sound the alarm"
when
$f : FireDetected( )
not( SprinklerActivated() )
then
// sound the alarm
end
Una semplice regola
Nome Regola
Una semplice regola CEP, senza il concetto di tempo
83. rule "Sound the alarm"
when
$f : FireDetected( )
not( SprinklerActivated() )
then
// sound the alarm
end
Una semplice regola
LHS
Una semplice regola CEP, senza il concetto di tempo
84. rule "Sound the alarm"
when
$f : FireDetected( )
not( SprinklerActivated() )
then
// sound the alarm
end
Una semplice regola
Una semplice regola CEP, senza il concetto di tempo
RHS
85. rule "Sound the alarm"
when
$f : FireDetected( )
not( SprinklerActivated( this after[0s,10s] $f ) )
then
// sound the alarm
end
Una semplice regola CEP
Una semplice regola CEP, con il concetto di tempo
86. rule "Sound the alarm"
when
$f : FireDetected( )
not( SprinklerActivated( this after[0s,10s] $f ) )
then
// sound the alarm
end
Una semplice regola CEP
Una semplice regola CEP, con il concetto di tempo
TEMPO
87. CEP con il BRMS
Complex Event Processing: accorgersi di eventi significativi per il
business riconoscendo time-based patterns in uno o più data feed in
real-time...
● Regola + Tempo: aggiunge il concetto di tempo alle regole base
○ Sliding windows
○ Entry points
○ Time operations
88. Rule Engine taglia slim
● Possibilità di invocare le regole
○ localmente al runtime
○ da remoto
● Deploy
○ JEE
○ OSGI
○ Wildfly Swarm
○ Spring-Boot
○ Java standalone
○ Docker
89. Lanciamo la campagna Pro If
● Non preoccupatevi se la logica della vostra
applicazione è piena di If.
● Soprattutto non preoccupatevi se non l’avete
capito subito...
● Lanciamo ufficialmente la campagna Pro If
○ Gli if dal codice li togliamo noi!
96. Uso del Rule Engine
Un Engine “Specializzato”
No scanner, uno specifico GAV, integrato nella mia pipeline di rilascio
97. E se serve un motore di regole scalabile ed in alta
affidabilità?
HACEP: https://github.com/redhat-italy/hacep/
● Si possono gestire, grazie a JBoss Data Grid, un certo numero di Engine
contemporanei
○ Mantenendo contemporaneamente copie di backup
● Distribuzione degli eventi per uno o più gruppi uniformi (carta di credito,
utente, giocatore, ecc.)
● Scalabilità fino a centinaia di nodi
● Prestazioni del cluster direttamente proporzionali al numero di nodi BRMS
101. Red Hat xPaas
Application Server
Pivotal tc Server, VMware vFabric, Oracle WebLogic
Server, IBM WebSphere
JBoss EAP
JBoss Web Server
In-memory data grid
IBM WebSphere eXtreme Scale, Oracle Coherence,
Pivotal GemFire, Software AG Terracotta JBoss Data Grid
Application integration
IBM Integration Bus, Oracle SOA Suite and ESB, MuleSoft
AnyPoint Platform, Sonic ESB, Tibco ActiveMatrix JBoss Fuse
Business rules and
process automation
IBM Operational Decision Manager and BPM, Oracle SOA
Suite and BPM Suite, Pega BPM, FICO Blaze Advisor
JBoss BRMS
JBoss BPM Suite
Messaging
IBM WebSphereMQ, Pivotal RabbitMQ, VMware vFabric,
Tibco Enterprise Message Service JBoss A-MQ
Mobile
IBM MobileFirst, SAP Mobile Platform, Kony Mobility
Platform, Telerik Platform, AnyPresence Mobile Application Platform
Data virtualization and
data services
IBM InfoSphere, Progress DataXtend SI, Composite
Information Server, Denodo JBoss Data Virtualization
138. Fuse e Openshift
● Fuse + Openshift = Fuse Integration Services
● Parte dell’offerta Red Hat xPaas
● Lavoro della community Fabric8
Camel Riding in the Cloud
139. Fuse e Openshift
● Build then push:
○ Compilo usando il maven plugin di Fabric8
○ Push del risultato (Container Image + Metadata) in OCP
● Push then build:
○ Push del progetto su git
○ Source 2 image in OCP
Modalità di deployment
140. Fuse e Openshift
● Soap2Rest:
○ CXF, Freemarker
○ Pure Java, CDI
○ S2I
Un caso concreto
149. Red Hat xPaas
Application Server
Pivotal tc Server, VMware vFabric, Oracle WebLogic
Server, IBM WebSphere
JBoss EAP
JBoss Web Server
In-memory data grid
IBM WebSphere eXtreme Scale, Oracle Coherence,
Pivotal GemFire, Software AG Terracotta JBoss Data Grid
Application integration
IBM Integration Bus, Oracle SOA Suite and ESB, MuleSoft
AnyPoint Platform, Sonic ESB, Tibco ActiveMatrix JBoss Fuse
Business rules and
process automation
IBM Operational Decision Manager and BPM, Oracle SOA
Suite and BPM Suite, Pega BPM, FICO Blaze Advisor
JBoss BRMS
JBoss BPM Suite
Messaging
IBM WebSphereMQ, Pivotal RabbitMQ, VMware vFabric,
Tibco Enterprise Message Service JBoss A-MQ
Mobile
IBM MobileFirst, SAP Mobile Platform, Kony Mobility
Platform, Telerik Platform, AnyPresence Mobile Application Platform
Data virtualization and
data services
IBM InfoSphere, Progress DataXtend SI, Composite
Information Server, Denodo JBoss Data Virtualization
151. API Management con 3Scale
Nell’era dei Microservizi
Luca Bigotta
#redhatosd
152. ● Il 22 giugno Red Hat annuncia
l’acquisizione di 3Scale
● Inizia la roadmap di evoluzione
verso Open Source di 3Scale
● 3Scale complementa il portfolio
middleware nella definizione delle
“Strategia API" di Red Hat
BREAKING NEWS!!!
https://www.redhat.com/it/about/press-releases/red-hat-acquire-api-management-leader-3scale
154. Un esempio del valore di 3Scale + Fuse insieme:
Composizione API + Management API
155. 3scale è la soluzione API management più adottata nel mondo
(750+ clienti)
L’architettura di 3Scale è stata progettata per garantire:
1. incomparabile Scalabilità e Alta affidabilità e Performance
2. Il minor time-to-value possibile
3. pricing competitivo sul mercato.
3Scale in breve ...
Component Technology
Front End Ruby on Rails
Gateway NGINX, Lua
Back End Ruby, Sinatra, Redis
Perchè 3Scale è sempre stata “interessante” per Red Hat?
propensione all’Open Source: l’architettura è completamente basata
su componenti Open Source
esiste da diversi anni una collaborazione fattiva tra 3Scale e Red Hat
3Scale e il Middleware Red Hat si complementano a vicenda
Il Traffic manager di 3Scale è da diverso tempo disponibile in
Openshift
157. Mobile &
supporto a IOT
Ecosistema dei
clienti
Ecosistema dei
partner
Agilità interna Monetizzazione
delle API
Gestione canali
multimediali e
transazionali
Use Case di adozione di 3Scale
159. API management: elemento essenziale nei
Microservizi
API
APIAPI
API
API
API
API Management
Develop Deploy Scale Manage
Container Application Platform (PaaS)
160. Use Case di adozione di 3Scale
Controllo Flessibilità e
capacità di scalare
Visibilità
161. Full Control delle API con 3Scale
Controllo
● Sicurezza
● Gestione Chiavi
autenticazione
● Limiti di traffico & SLA
● Policy Enforcement
● Gestione Apps & Users
● Provisioning
Flessibilità/scalabilità
● Deployment distribuito
● Multi-dipartimento
● Multi-Ambiente
● Estrema scalabilità
● Multi-protocollo
● Webhooks
Visibilità
● Analytics
● Tracking Apps
● User Tracking
● Alerts sull’ utilizzo
● On-boarding
● Supporto agli
Sviluppatori
163. Architettura modulare e flessibile
● Modulare
○ Configurazioni, Analytics, Portale clienti/sviluppatori
○ Traffic Manager
● Nessun “single point of failure”
● Configurazioni in Cloud su Tenant dedicato
● Molteplici Scenari di deployment del Traffic Manager
○ Managed (Saas)
○ Self-managed:
■ on-premise (fisico o virtuale)
■ in OpenShift
■ come libreria (gateway-less)
■ come CDN (negli scenari di content delivery
management)
164. a) Alta Affidabilità garantita: 99.999% uptime negli
ultimi anni.
b) 100.000.000+ di chiamate ad API gestite ogni
girono
c) Nessun single point of failure, architettura in HA e
traffico bilanciato sui più nodi
d) Bassissima latenza aggiunta dal traffic manager:
tra 20 ms and (at max) 50 ms
e) Ogni singolo nodo di traffic manager può gestire
più di 10.000 calls per second
f) Architettura del traffic manager è scalabile, e
configurabile in base alle esigenze
3Scale Traffic Manager: principali caratteristiche
165. Sicurezza e Privacy
● Diverse modalità di autenticare la API previsti di default
● Flessibilità e possibilità di estendere il supporto ad altri meccanismi di autenticazione
● Privacy garantita sul contenuto del messaggio. 3Scale lavora al livello degli header
● PCI-DSS and HIPAA compliant
● ISO27001 and SOC3 compliant
Utilizzato per la verifica delle policy e
aggiornamento delle statistiche
NON utilizzato
166. 3scale API Management principali caratteristiche: 1/5
Controllo degli accessi alle API flessibile e granulare
➢ API keys
➢ coppia App_ID e App_key
➢ Supporto allo standard de-facto:
OAuth v1.0 and 2.0
167. 3scale API Management principali caratteristiche: 2/5
Configurazione di contratti di livello di servizio
➢ Configurazione granulare dei livelli di
servizio per gruppi API consumer
➢ Configurazione di limiti flessibile
per-time-period
168. 3scale API Management principali caratteristiche: 3/5
Statistiche di utilizzo API
➢ Identificazione pattern di traffico
➢ Top API utilizzatori
➢ Alerts, creazione reporting ad hoc
169. 3scale API Management principali caratteristiche: 4/5
Documentazione delle interfacce automatica e interattiva
➢ Documentazione API Interattiva
➢ Swagger-based
➢ Self-service developer portal
171. 3scale API Management principali caratteristiche: 5/5
Gestione granulare della monetizzazione delle API
➢ pricing model flessibile
➢ Fatturazione automatica
➢ Servizi di pagamento pre-integrati
172. Monetizzazione delle API
Regole di
pricing
• Pagamento One time & canone fisso mensile
• Canone mensile variable (a consumo, pricing
dipendente dal volume)
Ciclo di
fatturazion
e
• 2 opzioni (prepagato e postpagato)
• Fatturazione mensile
Compliancy
• Nessun salvataggio di
informazioni di carta di
credito
Integration
• payments gateways pre-integrati
173. 3Scale Traffic Manager e Openshift
URL tenant 3Scale admin
Chiave autenticazione al
tenant 3Scale admn
Nome traffic manager
176. ● Il 7 settembre Red Hat pubblica una
customer reference che dimostra la
validità delle “Strategia API” di Red Hat.
● Prima referenza full Red Hat
● Red Hat 3Scale + JBoss Fuse
BREAKING NEWS!!!
https://www.redhat.com/it/about/press-releases/flytoget-deploys-red-hat-jboss-fuse-and-3scale-api-management-technology-further-its-digital-ambitions