Eclipse MicroProfile 1.2
October 03, 2017
1
Eclipse MicroProfile Community
What is Eclipse MicroProfile?
2
Community - individuals, organizations, vendors
3
And Growing ...
MicroProfile 1.0 (Sep, 2016)
4
MicroProfile 1.0
JAX-RS 2.0
JSON-P 1.0
CDI 1.2
Eclipse MicroProfile 1.1 (Aug, 2017)
5
MicroProfile 1.1
= New
= No change from last release
JAX-RS 2.0
JSON-P 1.0
CDI 1.2
Config 1.0
Configuration 1.0
Applications need to be configured based on a running environment. It must be possible to modify configuration data from outside an application so that the application itself does not need to be repackaged
6
Dev
Test
Prod
Configuration 1.0 - Influence and Implementations
Multiple projects directly influenced this proposal and acted as basis for this API, such as:
Current implementations:
7
Eclipse MicroProfile 1.1 - release content
8
9
Announcing ...
1.2
Eclipse MicroProfile 1.2 (Sep, 2017)
10
MicroProfile 1.2
= Updated
= No change from last release
JAX-RS 2.0
JSON-P 1.0
CDI 1.2
Config 1.1
Fault�Tolerance 1.0
JWT�Propagation 1.0
Health�Check 1.0
Metrics 1.0
= New
Health Check 1.0
Health checks are used to probe the state of a computing node from another machine (i.e. kubernetes service controller) with the primary target being cloud infrastructure environments where automated processes maintain the state of computing nodes
11
Health Check 1.0 - Goals
12
Metrics 1.0
To ensure reliable operation of software it is necessary to monitor essential system parameters. Metrics adds well-known monitoring endpoints and metrics for each process
13
Metric Registry
Required Base metrics
Application metrics
Vendor-specific metrics
Metrics 1.0 - Influence
Multiple projects directly influenced this proposal and acted as basis for this API, such as:
Metrics are different from Health Checks, which are primarily targeted at a quick yes/no response to the question "Is my application still running ok?"
14
Fault Tolerance 1.0
Fault tolerance is about leveraging different strategies to guide the execution and result of some logic. Retry policies, bulkheads, and circuit breakers are popular concepts in this area. They dictate whether and when executions should take place, and fallbacks offer an alternative result when an execution does not complete successfully
15
Fault Tolerance 1.0 - Influence and goal
Multiple projects directly influenced this proposal and acted as basis for this API, such as:
Goal:
16
JWT Propagation 1.0
The security requirements that involve microservice architectures are strongly related with RESTful Security. In a RESTful architecture style, services are usually stateless and any security state associated with a client is sent to the target service on every request in order to allow services to re-create a security context for the caller and perform both authentication and authorization checks
17
JWT Propagation 1.0 - Influence and goals
Multiple projects/standards directly influenced this proposal and acted as basis for this API, such as:
Goal:
18
Eclipse MicroProfile 1.2 - release content
19
- Technology Compatibility Kit (TCK) - Javadocs - Spec PDF doc - API Maven artifact coordinates - Git tag | - Technology Compatibility Kit (TCK) - Javadocs - Spec PDF doc - API Maven artifact coordinates - Git tag | - Technology Compatibility Kit (TCK) - Javadocs - Spec PDF doc - API Maven artifact coordinates - Git tag | - Technology Compatibility Kit (TCK) - Javadocs - Spec PDF doc - API Maven artifact coordinates - Git tag | - Technology Compatibility Kit (TCK) - Javadocs - Spec PDF doc - API Maven artifact coordinates - Git tag |
Eclipse MicroProfile 1.3 (Q4 CY2017 ?)
20
MicroProfile 1.3
= New
= No change from last release
JAX-RS 2.0
JSON-P 1.0
CDI 1.2
Config 1.1
Fault�Tolerance 1.0
JWT�Propagation 1.0
Health�Check 1.0
Metrics 1.0
Open Tracing 1.0
Open API 1.0
Roadmap
Eclipse MicroProfile 2.0 (Q4 CY2017 ?)
21
MicroProfile 2.0
= New
= No change from last release
JAX-RS 2.1
JSON-P 1.1
CDI 2.0
Config 1.1
Fault�Tolerance 1.0
JWT�Propagation 1.0
Health�Check 1.0
Metrics 1.0
Open Tracing 1.0
Open API 1.0
JSON-B 1.0
Roadmap
Eclipse MicroProfile @
22
Get Involved!
23
Eclipse MicroProfile
24
Old slides
25
Innovation vs. Standardization
Eclipse MicroProfile
(Open Source) Project
Incremental feature release
Community controls pace
Java Community Process
Standards organization
Large multi-feature releases
Spec Lead controls pace
26
Accelerating Adoption of Microservices
27
Time
8
9
1.0
1.1
2.0
2.1
2.2