Documente Academic
Documente Profesional
Documente Cultură
MicroProfile:
Accelerating
Cloud-Native
Application
Development with
Java Microservices
Ta ke yo u r c o mp a n y t o t he new
wo r ld of e n t e r p r i s e J a va wi th
m issio n - c r i t i c a l , c l oud - n ati ve
m ic ro se r v i c e s.
Third-party trademarks are the property of their respective owners. Copyright © 2018 Eclipse Foundation, Inc. All Rights Reserved. Made available under the
Eclipse Public License 2.0 (EPL-2.0).
2 ECLIPSE MICROPROFILE 3 ECLIPSE MICROPROFILE
Application development delays caused by unwieldy software code and vendor-dependent release cycles are
no longer acceptable in fast-paced businesses that are looking for a competitive edge. Speed, efficiency, and
security of the applications have become key to ensuring an optimal user experience.
EXECUTIVE
evolving digital market demands. Developers needed
tools and specifications to create dynamic and
scalable cloud-native applications and
The pace of innovation has changed. Companies, big and small, are scrambling to
implement digital strategies that will enable them to take new products and services to
market faster and more efficiently than ever.
In the digital era, customers have become increasingly virtual, mobile, and social — and
their expectations are soaring. The proliferation of open source software and emerging
technologies such as the Internet of Things (IoT), artificial intelligence (AI), cloud
computing, and big data have presented tremendous opportunities and challenges for
businesses. Organizations have to become lean and nimble to take advantage of all of
these technology trends.
Digital transformation projects have put heavy demands squarely on the shoulders of IT
and application developers to execute on evolving business strategies rapidly.
Third-party trademarks are the property of their respective owners. Copyright © 2018 Eclipse Foundation, Inc. All Rights Reserved. Made available under the
Eclipse Public License 2.0 (EPL-2.0).
4 ECLIPSE MICROPROFILE .
In answer to the slowdown in Java EE innovation, many vendors, Java champions, Java User Groups, and
corporations announced the Eclipse MicroProfile project in June 2016.
Eclipse MicroProfile is a collection of community-driven open source specifications that define an enterprise
Sep 2018 Sep 2017 Change Programming Language Ratings Change Java microservices platform — and it plays a vital role in the development of enterprise Java microservices.
The open source approach of MicroProfile removes reliance on any single vendor’s release cycles and makes
1 1 Java 17.436% +4.75% the development of microservices a natural extension of a Java EE developer’s existing skill set.
2 2 C 15.447% +8.06%
6 4 C# 3.295% -1.48%
I va r G ri mst a d
Pri nci p a l Cons u l t a nt a t
Source: TIOBE Index for September 2018 Cy b e rcom G rou p
Third-party trademarks are the property of their respective owners. Copyright © 2018 Eclipse Foundation, Inc. All Rights Reserved. Made available under the Third-party trademarks are the property of their respective owners. Copyright © 2018 Eclipse Foundation, Inc. All Rights Reserved. Made available under the
Eclipse Public License 2.0 (EPL-2.0). Eclipse Public License 2.0 (EPL-2.0).
6 ECLIPSE MICROPROFILE 7 ECLIPSE MICROPROFILE
Although the Java EE platform With the transition of Java EE Many enterprise companies who
remains valuable for many to Jakarta EE nearly complete, built monolithic applications
developers and businesses, the developers are able to seamlessly during the pre-cloud,
community also recognized the mix and match Java EE (Jakarta pre-container era are now looking
need for a cloud-native Java that EE) and MicroProfile APIs in for frameworks and specifications
was ready to participate at the the same application. Since that would enable them to move
MicroProfile pace. To answer this MicroProfile evolves incrementally into the more efficient world of
need, in September 2017, leading and can deliver new capabilities at microservices.
software vendors collaborated to up to 12x the pace of traditional
move Java EE technologies to the Java EE, with less risk and smaller
Eclipse Foundation where they feature sets, developers can adopt
will now continue to evolve under new innovations more quickly.
the Jakarta EE brand.
Third-party trademarks are the property of their respective owners. Copyright © 2018 Eclipse Foundation, Inc. All Rights Reserved. Made available under the Third-party trademarks are the property of their respective owners. Copyright © 2018 Eclipse Foundation, Inc. All Rights Reserved. Made available under the
Eclipse Public License 2.0 (EPL-2.0). Eclipse Public License 2.0 (EPL-2.0).
8 ECLIPSE MICROPROFILE 9 ECLIPSE MICROPROFILE
S O U RCES O F VA LU E
D I GITAL
TRAN SFOR MAT ION IS REIM AGINE GET C LO SER
N O LONGER JU ST A
PRO C ESSES TO C USTO M ERS
B UZ Z TERM
ASSUM E M O RE BUILD
RISK AS INTELLIGENT
APPRO PRIATE PRO DUCTS
W h e n i t c o mes t o d ig it a l
D E L I VE RY E NG I NE
ex p e ri e n c e s, c ust ome rs’
ex p e c t at i ons a re hig h — a nd
cl i m b i n g.
C USTO M E R -
AGILE AT DATA
EXPERIEN CE
SCALE SC IENC ES
DESIGN
Key drivers of digital transformation include:
TALENT AND
• Technological advances such as IoT, AI, virtual GOVERNANC E
PARTENRSH IPS
reality, augmented reality and others that drive
operational efficiencies FINANC IAL O RGANIZATIO NAL
PRO C ESSES H EALTH
• Savvy customers and empowered employees
who demand personalized interactions on
devices and applications of their choice Source: McKinsey & Company
Third-party trademarks are the property of their respective owners. Copyright © 2018 Eclipse Foundation, Inc. All Rights Reserved. Made available under the
Eclipse Public License 2.0 (EPL-2.0).
10 ECLIPSE MICROPROFILE 11 ECLIPSE MICROPROFILE
Applications that use microservices, delivered When it comes to open source, traditional From a Java ecosystem perspective, having Jakarta
on open source software, have become a viable competitors often become collaborators who work EE and MicroProfile under an open source foundation
alternative to the current application development together to grow ecosystems within which they such as the Eclipse Foundation enables companies
Ivar Grimstad,
models.
Principal Consultant at Cybercom develop core capabilities and share intellectual to mitigate business risk by accelerating the market
Group property. This collaboration allows them to free adoption of technologies, specifications, and
up scarce organizational resources to focus on standards.
delivering differentiated products and services faster,
thereby igniting revenue growth.
Third-party trademarks are the property of their respective owners. Copyright © 2018 Eclipse Foundation, Inc. All Rights Reserved. Made available under the Third-party trademarks are the property of their respective owners. Copyright © 2018 Eclipse Foundation, Inc. All Rights Reserved. Made available under the
Eclipse Public License 2.0 (EPL-2.0). Eclipse Public License 2.0 (EPL-2.0).
12 ECLIPSE MICROPROFILE 13 ECLIPSE MICROPROFILE
Understanding microservices
Si g n i fi c a n t
According to Martin Fowler, respected software developer, author,
b en efi t s of o p e n and speaker, “the microservice architectural style is an approach
s o u rc e soft wa re to developing a single application as a suite of small services, each
include: running in its own process and communicating with lightweight
mechanisms, often an HTTP resource API.”
• Free of cost to the Under the microservices model, applications are designed as a
community who have collection of unique services built around business capabilities that can
the rights to use, be deployed, modified, and managed without impact to the application
modify and distribute as a whole. Microservices use a distributed architecture where service
“Ma ny en t e r p r i s e s “Both Mi croProfile
components are accessed using remote access protocols such as
a re st uc k w i t h • Flexibility due to and Jakar ta EE Representational State Transfer (REST).
soft wa re ve n d o rs customization are open s ource
possibilities
w h o m t h ey c a n n ot com m uni t y In contrast, monolithic applications are not modular and are built
as single systems. Changes made to any part of the system
in f lu en c e . T h ey • More accessible than col l aborati on require the application to be rebuilt and re-deployed as
ca nnot su b mi t b ug proprietary software effor ts. T he i nte n t the whole application — proving a leg up for the
p a t c h es, re q u e st s i s to enabl e choic e microservice architecture.
• Improved reliability
fo r fea t u re s, o r h e l p due to the community
throug h m ul ti ple
st eer t h e d i re c t i on approach to quicker i m pl em entati ons
of t he t ec h n ol og y. bug fixes and thereby
Wit h Mic roProfi l e , reduce ri s k for
• Focus on
yo u a b so l u t e l y c a n . interoperability org ani zati ons.”
I t is o n e of t h e
few o pe n s o u rc e • Secure development
John Clingan,
environment, as a
c o m m u nit i e s w h e re Senior Principal Product
result of more eyes
a n ent er p r i s e , w h o on the source code
Manager at Red Hat
is a u se r of t h e
t ech n o lo gy, c a n • Transparency that
makes “who, what,
h a ve t h e i r voi c e where, when, and
h ea rd an d c an why” a matter of
m a ke t e c h n i c al public record
a nd n o n-t e c h n i c al
c o nt r ib ut i o n s.”
Martijn Verburg,
CEO, jClarity
Third-party trademarks are the property of their respective owners. Copyright © 2018 Eclipse Foundation, Inc. All Rights Reserved. Made available under the
Eclipse Public License 2.0 (EPL-2.0).
14 ECLIPSE MICROPROFILE 15 ECLIPSE MICROPROFILE
S O, W H AT I S EC L I PS E
M I C RO P RO F I L E ?
Eclipse MicroProfile is a collection of community-driven open source specifications that define an enterprise
Java microservices platform. MicroProfile is designed to run enterprise applications with reliability, availability,
scalability, and performance. It helps businesses achieve improved agility, faster time-to-market, higher
development productivity, easier maintenance, continuous integration, and continuous deployment.
“ Mic ro Profil e st a r t e d
Why adopt a microservices so meth in g u ni q u e
in th e in du st r y. We
architecture? c o llabo rate a ro u nd o p e n
so urc e spe c i f i c a t i o ns,
an d pe o ple c a n g o off
1 2 3 4 an d imple me nt p ro j e c t s
base d o n th o se sp e c s.
St ro n g Mod u l e I mp roved Better Technol ogy Custo me rs d o n’ t g et
Bo u nda ri e s s c a l ab i l it y Manag eabi l i t y Di vers i t y lo c ke d in to a si ng l e
Strong Module Self-contained services Better Manageability Technology Diversity
imple me nt a t i o n.”
Boundaries provide help achieve improved derived from the removes single platform
autonomy whereby scalability and flexibility decoupling of services reliance allowing
John Clingan,
services can be to meet the needs of the from the application microservices to mix
Senior Principal Product Manager at
developed, tested business enables simplified multiple languages,
Red Hat
and deployed without change control and development
adversely impacting the maintenance ensuring frameworks, and data-
rest of the application reliable performance storage technologies
Third-party trademarks are the property of their respective owners. Copyright © 2018 Eclipse Foundation, Inc. All Rights Reserved. Made available under the
Eclipse Public License 2.0 (EPL-2.0).
16 ECLIPSE MICROPROFILE 17 ECLIPSE MICROPROFILE
M o men t u m aro u n d
M icro Prof i l e c o n t i n u es t o
grow. As of p u b l i c at i o n ,
the list of M i c ro Prof i l e
imp lem en t at i o n s an d
o p en sou rc e p ro j ec t s
includ es :
Scala/Play/Akka/Lagom 6.54%
• Oracle - Helidon Sparkjava 4.04%
Third-party trademarks are the property of their respective owners. Copyright © 2018 Eclipse Foundation, Inc. All Rights Reserved. Made available under the Third-party trademarks are the property of their respective owners. Copyright © 2018 Eclipse Foundation, Inc. All Rights Reserved. Made available under the
Eclipse Public License 2.0 (EPL-2.0). Eclipse Public License 2.0 (EPL-2.0).
19 ECLIPSE MICROPROFILE
“Eclipse MicroProfile is at the With six major releases in less than two years, the MicroProfile community is helping developers leverage
innovations sooner.
vanguard of cloud-native Java
innovation, with many exciting
developments quickly moving
Open Tracing Open API Rest Client Config
from incubation to specification
Rebase on 1.1 1.0 1.1 1.3
The Java community’s desire to see enterprise Java evolve to support cloud, containers, microservices,
serverless, API management, and other digital transformation related capabilities is clear. MicroProfile
has been rapidly fulfilling the need to extend the Java EE platform to help developers create portable
cloud-native applications. Martijn Verburg,
jClarity
Third-party trademarks are the property of their respective owners. Copyright © 2018 Eclipse Foundation, Inc. All Rights Reserved. Made available under the Third-party trademarks are the property of their respective owners. Copyright © 2018 Eclipse Foundation, Inc. All Rights Reserved. Made available under the
Eclipse Public License 2.0 (EPL-2.0). Eclipse Public License 2.0 (EPL-2.0).
20 ECLIPSE MICROPROFILE
B U SINESS BE N E FITS :
PROV IDE A
FRAM EWO R K FO R
B U I L DING O U T T HE
B U SINESS CAS E
Developing the business case for
Eclipse MicroProfile
The business case development and approval processes within organizations vary.
However, the underlying costs-benefits analysis and principles mostly remain the
same. The following factors will help you determine if your organization
can benefit from adopting a microservices architecture in general and Is your business a good fit for
specifically a community-driven open source specification for
enterprise Java microservices such as Eclipse MicroProfile. enterprise Java microservices?
To determine if enterprise Java microservices are a good fit for your company, ask yourself the following
questions.
Do you interact with your customers Do you have scalability issues of your
primarily through software and web applications, which negatively impact the
interfaces? growth of your business?
Are software licensing costs preventing Do you have an existing team of enterprise
your applications from achieving “Internet Java developers?
scale?”
Do you foresee business growth and
Is your IT development team slow to react integration requirements where flexibility in
to change requests from the business? application development is crucial?
If you answered “yes” to most of the questions above, your business could likely take advantage of a
microservices architecture to drive operational efficiencies and improve time-to-market for your products.
Third-party trademarks are the property of their respective owners. Copyright © 2018 Eclipse Foundation, Inc. All Rights Reserved. Made available under the
Eclipse Public License 2.0 (EPL-2.0).
23 ECLIPSE MICROPROFILE
Multiple ways Re so u rc e s a t
Po r tabilit y I n te ro pe rabilit y
to use A PI s yo u r f i ng e r t i p s
Users can develop MicroProfile ensures MicroProfile APIs provide Various resources that
applications that can run interworking between easy-to-use interfaces help with the adoption
on multiple MicroProfile implementations — context dependency of MicroProfile are
The great thing about MicroProfile is that multiple implementations. through interoperability
tests. Interoperability
injection-based
(CDI), programmatic,
made available to the
community. Some of
vendors are working on it to define the base is explicitly defined for
MicroProfile JWT security
command-line, and file-
based.
these are listed on the
next page:
profile — APIs and specifications. There are specification.
Third-party trademarks are the property of their respective owners. Copyright © 2018 Eclipse Foundation, Inc. All Rights Reserved. Made available under the Third-party trademarks are the property of their respective owners. Copyright © 2018 Eclipse Foundation, Inc. All Rights Reserved. Made available under the
Eclipse Public License 2.0 (EPL-2.0). Eclipse Public License 2.0 (EPL-2.0).
24 ECLIPSE MICROPROFILE 25 ECLIPSE MICROPROFILE
• MicroProfile Google Group tools and frameworks can leave you with a maze Mar tijn Ve rburg,
of complexity and skill-set gaps that slow your C EO, jC larit y
to facilitate community
business down.
communication and discussion
• A wizard-driven starter
application that generates
MicroProfile-related assets you
need to quickly get started with
your microservices projects
Third-party trademarks are the property of their respective owners. Copyright © 2018 Eclipse Foundation, Inc. All Rights Reserved. Made available under the Third-party trademarks are the property of their respective owners. Copyright © 2018 Eclipse Foundation, Inc. All Rights Reserved. Made available under the
Eclipse Public License 2.0 (EPL-2.0). Eclipse Public License 2.0 (EPL-2.0).
27 ECLIPSE MICROPROFILE
T H E R E A R E SEV E RA L WAYS TO
L EA R N M O R E A B O U T M IC RO P RO F IL E
A ND TO G ET INVO LV E D IN DR IV ING
T H E EVO LU T IO N O F E NT E R P R ISE
“We need J AVA M IC RO SE RV IC ES:
organizations
such as the Eclipse To learn more, visit The Eclipse To join in the To participate
Foundation for the the MicroProfile MicroProfile project discussion, check in MicroProfile
website which page offers more out the MicroProfile calls, meetings
governance they provide. It is includes a blog, technically oriented discussion group. and events, check
very worthwhile to promote FAQs, and other information on out the project
and fund them.” useful information. the project, its calendar.
governance,
Kevin Su tt e r, specifications,
STSM, Micro Profi l e and links to code
Arch itec t at I B M repositories.
Third-party trademarks are the property of their respective owners. Copyright © 2018 Eclipse Foundation, Inc. All Rights Reserved. Made available under the Third-party trademarks are the property of their respective owners. Copyright © 2018 Eclipse Foundation, Inc. All Rights Reserved. Made available under the
Eclipse Public License 2.0 (EPL-2.0). Eclipse Public License 2.0 (EPL-2.0).
ABOUT US
The Eclipse Foundation is a not-for-profit organization supported by more than 275 member organizations
who value the Foundation’s unique Working Group governance model, open innovation processes, and
community-building events. The Foundation provides a global community of individuals and organizations
with a mature, scalable, and business-friendly environment for open source software collaboration and
innovation. It is home to MicroProfile, Jakarta EE, the Eclipse IDE and more than 350 open source projects
including runtimes, tools, and frameworks for a wide range of technology domains such as the Internet of
Things, automotive, geospatial, systems engineering and many others.
Ability to join and participate in Take advantage of marketing The right to participate in the
the Eclipse Foundation Working programs that target the Eclipse Eclipse Board of Directors and
Groups, industry collaborations developer community, including guide the strategy of the Eclipse
that develop new open source exposure for commercial products Foundation (based on established
software platforms on Eclipse Marketplace Client guidelines)
Receive discounts on sponsorship The opportunity to network with The ability to use the Eclipse
and registration fees for Eclipse other member organizations Foundation member logo on your
Foundation events through Foundation-run events site and have your logo listed on
and one-on-one introductions by our members’ page and in other
Foundation staff promotional material
To find out more about joining the Eclipse Foundation, please visit eclipse.org/membership