SlideShare una empresa de Scribd logo
Microservicios con JavaEE/JakartaEE
V´ıctor Orozco - @tuxtor
April 12, 2018
GuateJUG
1
V´ıctor Orozco
• Developer (JVM/Open
Source Advocate)
• JUG Leader
• Consultor independiente
• Profesor universitario
• @tuxtor
• http://vorozco.com
• http://tuxtor.shekalug.org
2
J2EE
J2EE
3
J2EE
4
Java EE 7
JavaEE 7
5
JavaEE 7
JavaEE 7
• Nuevo JMS
• WebSockets
• JSON Support
• Concurrency
• Nuevo JAX-RS
• Batch apps
6
Java EE 7 - La rebeli´on de los Dukes
JavaEE 7 - La rebeli´on
7
JavaEE Micro y sus lecciones
Lecci´on 1: Los microservicios son
una revoluci´on de pensamiento
Monolito
Figure 1: Monolito regular - Cr´editos: Markus Eisele
8
ESB
Figure 2: ESB - Cr´editos: Markus Eisele
9
Microservicios
Figure 3: Microservicios - Cr´editos: Markus Eisele
10
Microservicios
Ventajas
• Bases de c´odigo peque˜nas
• Buenas practicas
• Tolerancia a fallas
• Escalabilidad
Desventajas
• Tooling overhead
• Depuraci´on
• Transacciones distribuidas
• Latencia
• Dependencia
11
Microservicios
Desventaja principal
Hype Driven Development
12
Lecci´on 2: Microservicios no son lo
mismo para todos
Como
Pruebas de concepto de Sr. a Jr.
• Vert.x
• Spring Boot
• DropWizard
• Akka
• NodeJS . . .
• JavaEE
13
J2EE
Trabajos J2EE Guatemala 2018
14
Recursos humanos
• De las universidades ”top” en Guatemala solo 3 ense˜nan Java
realmente bien
• Las otras dos ense˜nan .NET
• Las Sillicon Valley off-shores se llevan a los mejores devs
15
Lecci´on 3: No es necesario ser
100% ”microservicios”
Microservicios - JavaEE
JavaEE es el framework m´as anti-hype
J2EE 1.2 (Diciembre 12, 1999)
16
Microservicios - JavaEE
Implementaci´on
• Refactoring iterativo - Por oleadas
• Refactoring practico - Extraer solo los servicios necesarios
• Nuevos servicios - Nuevos servicios le hablan a monolitos
17
Microservicios - JavaEE
Figure 4: Tecnolog´ıas JavaEE - Cr´editos: Reza Rahman
18
Microservicios - JavaEE
19
Microservicios - JavaEE
20
Microservicios - JavaEE
21
Microservicios - Implementaciones
• Wildfly Swarm
• KumuluzEE
• Open Liberty
• TomEE
• Payara Micro
22
Microservicios - Payara
Target actual: Microprofile 1.2
• Microprofile 1.2
• JavaEE Web Profile
• JCache
Despliegues
• Micro JavaEE server (CLI)
• Uber-Jar/Fat-Jar
23
Demo
JavaEE Micro - Demo
Java 8, JAX-RS, CDI, EJB,
Microprofile
https://github.com/tuxtor/payara-demo
https://github.com/tuxtor/omdb-demo
24
Payara Micro - JavaEE tradicional
Asumimos
• EJB
• JTA
• JAX-RS
• CDI
25
Payara Micro - Micro JavaEE
MicroProfile: JAX-RS, CDI (Por servicio), Config, Fault Tolerance, Metrics
Implementaci´on: EJB, JTA (Por servicio)
Por hacer: Location, Deployment, Orchestation, Balancing, Consistency,
Patterns
26
Config
@Inject
@ConfigProperty (name = "omdbservice.url")
String omdbDaemonServiceUrl ;
27
Fault tolerance
• Circuit Breaker
• Bulkhead
• Fallback
• Retry
• Timeout
28
Fault tolerance - Fallback, Timeout
@GET
@Path("/{id:[a-z]*[0 -9][0 -9]*}")
@Fallback(fallbackMethod = " findByIdFallBack ")
@Timeout(TIMEOUT)
public Response findById(@PathParam("id")
final String imdbId) {
...
}
public Response findByIdFallBack (@PathParam("id")
final String imdbId) {
...
}
29
Metrics
• Vendor
• Base
• Application
30
Metric
@Inject
@Metric
Counter failedQueries;
31
Java EE 8
JavaEE 8
32
JavaEE 8
JavaEE 8
• Mejor integraci´on de JSF con CDI
• Mejor integraci´on de JMS con CDI
• HTTP/2
• JSON-B
• Security
• JAX-RS Reactivo
33
JavaEE 8
34
JavaEE 8
35
JavaEE 8
36
JavaEE 8
• Glassfish – 100% compatible con JavaEE 8
• Wildfly(JBoss) – Inician los trabajos para JavaEE 8, se
esperan para Wildfly 12
• OpenLiberty – Fase beta de soporte
• Payara – Fase beta de soporte
• TomEE – Inican los trabajos para JavaEE 8
• Weblogic – Compromiso publico que JavaEE 8 sera
implementado
37
Gracias
• me@vorozco.com
• http://vorozco.com
• http://github.com/tuxtor/slides
This work is licensed under a Creative Commons
Attribution-ShareAlike 3.0 Guatemala License.
38

Más contenido relacionado

PDF
Java EE moderno, de monolitos a Payara Micro
PDF
Introducción a JakartaEE 8
PDF
Microservicios con Jakarta EE y Eclipse MicroProfile
PDF
Actualizando aplicaciones empresariales en Java desde Java 8 on premise hasta...
PDF
Desarrollo moderno con DevOps y Cloud Native
PDF
Actualizando aplicaciones empresariales en Java desde Java 8 on premise hasta...
PDF
Empaquetando aplicaciones Java con Docker y Kubernetes
PDF
Seguridad de aplicaciones Java/JakartaEE con OWASP Top 10
Java EE moderno, de monolitos a Payara Micro
Introducción a JakartaEE 8
Microservicios con Jakarta EE y Eclipse MicroProfile
Actualizando aplicaciones empresariales en Java desde Java 8 on premise hasta...
Desarrollo moderno con DevOps y Cloud Native
Actualizando aplicaciones empresariales en Java desde Java 8 on premise hasta...
Empaquetando aplicaciones Java con Docker y Kubernetes
Seguridad de aplicaciones Java/JakartaEE con OWASP Top 10

La actualidad más candente (14)

PDF
Iniciando microservicios reales con JakartaEE/MicroProfile y arquetipos de Maven
PDF
Tolerancia a fallas, service mesh y chassis
PDF
Introducción a GraalVM Native para aplicaciones JVM
PDF
Gestión de proyectos con Maven
PDF
Introducción a Kotlin para desarrolladores Java
PPTX
Docker y todo eso... más o menos
PPTX
Overview atlas (1)
PDF
Greach 2011 - Novedades de Grails 2.0
PPTX
Kubernetes: Do's, don'ts and why's
PDF
Have you met Istio?
PPTX
Meetup de kubernetes, conceptos básicos.
PDF
Configurar snmp en cisco
PPTX
Containers en .NET (Dot Net 2018 - Spain)
PDF
¿Cómo se despliega y autoescala Couchbase en Cloud? ¡Aprende de manera práctica!
Iniciando microservicios reales con JakartaEE/MicroProfile y arquetipos de Maven
Tolerancia a fallas, service mesh y chassis
Introducción a GraalVM Native para aplicaciones JVM
Gestión de proyectos con Maven
Introducción a Kotlin para desarrolladores Java
Docker y todo eso... más o menos
Overview atlas (1)
Greach 2011 - Novedades de Grails 2.0
Kubernetes: Do's, don'ts and why's
Have you met Istio?
Meetup de kubernetes, conceptos básicos.
Configurar snmp en cisco
Containers en .NET (Dot Net 2018 - Spain)
¿Cómo se despliega y autoescala Couchbase en Cloud? ¡Aprende de manera práctica!
Publicidad

Similar a Java EE, Microprofile y Payara Micro (20)

PDF
Microservicios funcionales con Java 8, Java EE y Payara Micro
PPT
Introduccion Java.ppt
PDF
Oracle-Developer-Day-Colombia_MySQL-Feb27_12
PDF
Taller introducción Java EE 7 @UAPA
PDF
Software Open Source – Open Day Oracle 2013
PDF
Software Líbre con respaldo de Oracle ~ OTN Tour 2013
PDF
Introducción a Java EE con Apache TomEE
PDF
El camino de Java a Kubernetes
KEY
SpringIO 2012 Madrid-Escalabilidad con Grails
PDF
MySQL de 1995 a 5.5
PDF
Java EE 8 / Jakarta EE y Microprofile
KEY
JRuby al Rescate de J2EE
PDF
Programar java 2pre
PDF
Manual de javapre
PDF
Java 9, 10, 11 ,12, 13 and more
PDF
Frameworks de Desarrollo Web Grails
PDF
3 JEPs que no sabías que necesitas conocer.-1.pdf
PPT
Introducción a Java
PDF
Programación reactiva con java
Microservicios funcionales con Java 8, Java EE y Payara Micro
Introduccion Java.ppt
Oracle-Developer-Day-Colombia_MySQL-Feb27_12
Taller introducción Java EE 7 @UAPA
Software Open Source – Open Day Oracle 2013
Software Líbre con respaldo de Oracle ~ OTN Tour 2013
Introducción a Java EE con Apache TomEE
El camino de Java a Kubernetes
SpringIO 2012 Madrid-Escalabilidad con Grails
MySQL de 1995 a 5.5
Java EE 8 / Jakarta EE y Microprofile
JRuby al Rescate de J2EE
Programar java 2pre
Manual de javapre
Java 9, 10, 11 ,12, 13 and more
Frameworks de Desarrollo Web Grails
3 JEPs que no sabías que necesitas conocer.-1.pdf
Introducción a Java
Programación reactiva con java
Publicidad

Más de Víctor Leonel Orozco López (18)

PDF
Introducción al análisis de datos
PDF
From traditional to GitOps
PDF
De Java 8 a Java 17
PDF
Desde la TV, hasta la nube, el ecosistema de Java en 26 años
PDF
Bootstraping real world Jakarta EE/MicroProfile microservices with Maven Arch...
PDF
Explorando los objetos centrales de Kubernetes con Oracle Cloud
PDF
Design Patterns para Microsserviços com MicroProfile
PDF
MicroProfile benefits for your monolithic applications
PDF
Consejos y el camino del desarrollador de software
PDF
De Java 8 ate Java 14
PDF
Programación con ECMA6 y TypeScript
PDF
De Java 8 a Java 11 y 14
PDF
MicroProfile benefits for monolitic applications
PDF
Kotlin+MicroProfile: Enseñando trucos de 20 años a un nuevo lenguaje
PDF
Kotlin+MicroProfile: Ensinando 20 anos para uma linguagem nova
PDF
Eclipse MicroProfile para el desarrollador ocupado
PDF
Eclipse MicroProfile para o desenvolvedor ocupado
PDF
Eclipse MicroProfile metrics: Practical use cases
Introducción al análisis de datos
From traditional to GitOps
De Java 8 a Java 17
Desde la TV, hasta la nube, el ecosistema de Java en 26 años
Bootstraping real world Jakarta EE/MicroProfile microservices with Maven Arch...
Explorando los objetos centrales de Kubernetes con Oracle Cloud
Design Patterns para Microsserviços com MicroProfile
MicroProfile benefits for your monolithic applications
Consejos y el camino del desarrollador de software
De Java 8 ate Java 14
Programación con ECMA6 y TypeScript
De Java 8 a Java 11 y 14
MicroProfile benefits for monolitic applications
Kotlin+MicroProfile: Enseñando trucos de 20 años a un nuevo lenguaje
Kotlin+MicroProfile: Ensinando 20 anos para uma linguagem nova
Eclipse MicroProfile para el desarrollador ocupado
Eclipse MicroProfile para o desenvolvedor ocupado
Eclipse MicroProfile metrics: Practical use cases

Último (20)

PDF
0007_PPT_DefinicionesDeDataMining_201_v1-0.pdf
PDF
Tips de Seguridad para evitar clonar sus claves del portal bancario.pdf
PPTX
Curso de generación de energía mediante sistemas solares
PDF
Distribucion de frecuencia exel (1).pdf
PPTX
El uso de las TIC en la vida cotidiana..
PDF
PRESENTACIÓN GENERAL MIPIG - MODELO INTEGRADO DE PLANEACIÓN
PPTX
Propuesta BKP servidores con Acronis1.pptx
PDF
MANUAL TECNOLOGÍA SER MINISTERIO EDUCACIÓN
PPTX
modulo seguimiento 1 para iniciantes del
PPTX
Diapositivas Borrador Rocha Jauregui David Paolo (3).pptx
PPTX
Mecanismos-de-Propagacion de ondas electromagneticas
PDF
Teoría de estadística descriptiva y aplicaciones .pdf
DOCX
Guía 5. Test de orientación Vocacional 2.docx
DOCX
Trabajo informatica joel torres 10-.....................
PDF
Documental Beyond the Code (Dossier Presentación - 2.0)
DOCX
TRABAJO GRUPAL (5) (1).docxjsjsjskskksksk
PPTX
ccna: redes de nat ipv4 stharlling cande
PDF
TRABAJO DE TECNOLOGIA.pdf...........................
PDF
ADMINISTRACIÓN DE ARCHIVOS - TICS (SENA).pdf
PPT
Protocolos de seguridad y mecanismos encriptación
0007_PPT_DefinicionesDeDataMining_201_v1-0.pdf
Tips de Seguridad para evitar clonar sus claves del portal bancario.pdf
Curso de generación de energía mediante sistemas solares
Distribucion de frecuencia exel (1).pdf
El uso de las TIC en la vida cotidiana..
PRESENTACIÓN GENERAL MIPIG - MODELO INTEGRADO DE PLANEACIÓN
Propuesta BKP servidores con Acronis1.pptx
MANUAL TECNOLOGÍA SER MINISTERIO EDUCACIÓN
modulo seguimiento 1 para iniciantes del
Diapositivas Borrador Rocha Jauregui David Paolo (3).pptx
Mecanismos-de-Propagacion de ondas electromagneticas
Teoría de estadística descriptiva y aplicaciones .pdf
Guía 5. Test de orientación Vocacional 2.docx
Trabajo informatica joel torres 10-.....................
Documental Beyond the Code (Dossier Presentación - 2.0)
TRABAJO GRUPAL (5) (1).docxjsjsjskskksksk
ccna: redes de nat ipv4 stharlling cande
TRABAJO DE TECNOLOGIA.pdf...........................
ADMINISTRACIÓN DE ARCHIVOS - TICS (SENA).pdf
Protocolos de seguridad y mecanismos encriptación

Java EE, Microprofile y Payara Micro