Upgrade to Pro — share decks privately, control downloads, hide ads and more …

MicroProfile - New and Noteworthy

MicroProfile - New and Noteworthy

When the Microprofile initiative was started in 2016, it only took about three months before version 1.0 was launched. From day one, there were four different implementations from four different vendors available.

And the progress does not stop there! Whereas version 1.0 was a subset of Java EE specifications, the following versions bring additional technologies useful for building microservices.

Current version contains APIs and implementations for:

Externalized Configuration
Fault Tolerance
Health Checks
Application Metrics
Security
Open API
Open Tracing
Client API

In this fast-paced, demo-heavy session, MicroProfile will be introduced and demonstrated using the available implementations in live coding demos. All implementations will be explored and compared in a vendor neutral way.
We will also take a look at the potential candidates for future versions, Java EE 8 support and the relationship to EE4J and Jakarta EE.

ivargrimstad

June 11, 2018
Tweet

More Decks by ivargrimstad

Other Decks in Programming

Transcript

  1. @ivar_grimstad #MicroProfile Full Profile Web Profile JAX-RS + CDI +

    JSON-P + WebSocket + Bean Validation + EJB + JPA + Servlet + JSF + JSP + JMS + Batch + Java Mail + Concurrency + JAX-WS + JASPIC
  2. @ivar_grimstad #MicroProfile Hardware Operating System JVM UberJAR Hardware Operating System

    JVM MicroProfile Container MicroProfile Application Hardware Operating System JVM Java EE Container Java EE Application java -jar dukes.jar java -jar dukes.jar dukes.war deployDukes.sh
  3. @ivar_grimstad #MicroProfile Hardware Operating System JVM UberJAR Hardware Operating System

    JVM MicroProfile Container MicroProfile Application Hardware Operating System JVM Java EE Container Java EE Application docker run dukes docker run dukes docker run dukes
  4. @ivar_grimstad #MicroProfile #devsum18 Application Metrics Service A MicroProfile 1.2 /metrics

    /metrics/application Service B MicroProfile 1.2 /metrics /metrics/application …
  5. @ivar_grimstad #MicroProfile @Path("birthday") public interface BirthdayService { @GET String daysToBirthday(@QueryParam("date")

    String date); } RestClientBuilder.newBuilder() .baseUrl(new URL(“https://birtdayservice.duke”)) .build(BirthdayService.class) .daysToBirthday(“2018-05-31”)); Typesafe RestClient
  6. @ivar_grimstad #MicroProfile JAX-RS 2.1 JSON-P 1.1 JSON-B 1.0 Servlet 4.0

    CDI 2.0 Bean Validation 2.0 Java EE Security API 1.0 JSF 2.3 JPA 2.1 September, 2017
  7. @ivar_grimstad #MicroProfile Eclipse MicroProfile http://microprofile.io Jakarta EE https://jakarta.ee Eclipse Enterprise

    for Java (EE4J) https://projects.eclipse.org/projects/ee4j Samples https://github.com/ivargrimstad/cloudee-duke https://github.com/ivargrimstad/dukes-microprofile