SlideShare a Scribd company logo
©2017 IBM Corporation
MicroProfile at IBM:
Erin Schnabel
schnabel@us.ibm.com
@ebullientworks
Enabling creation of Cloud Native applications 

and Microservices with Liberty
Alasdair Nottingham
alasdair@us.ibm.com
@nottycode
©2017 IBM Corporation
©2017 IBM Corporation
Names you might recognize…
Kevin Sutter

WebSphere Java EE Architect
sutter@us.ibm.com
Alasdair Nottingham

WebSphere Liberty Architect
alasdair@us.ibm.com
Erin Schnabel

Cloud Native Developer Services
schnabel@us.ibm.com
Emily Jiang

MicroProfile Development Lead
emijiang@uk.ibm.com
©2017 IBM Corporation
WebSphere Liberty
©2017 IBM Corporation
<background>
©2017 IBM Corporation
6
WebSphere Application Server (the full profile) has been around
forever.
Big codebase
Big customer base
Big workloads
… Big inhibitors to massive change

History
©2017 IBM Corporation
History
WebSphere Application Server (the full profile) has been around
forever.
Big codebase
Big customer base
Big workloads
… Big inhibitors to massive change

7
This is not a complaint.
This is a problem we are

happy to have.
©2017 IBM Corporation
History
WebSphere Application Server (the full profile) has been around
forever.
Big codebase
Big customer base
Big workloads
… Big inhibitors to massive change

8
This is not a complaint.
This is a problem we are

happy to have.
But it is still a problem.
©2017 IBM Corporation
Code that has been around
forever…
If your code lives long enough, 

and is used enough, 

it ends up looking like… 

9
©2017 IBM Corporation
Code that has been around
forever…
10
dragons
©2017 IBM Corporation
Code that has been around
forever…
11
dragons
?!
Especially code that has roots 

going back to late ‘90s…
©2017 IBM Corporation
</background>
©2017 IBM Corporation
<cleanSlate>
©2017 IBM Corporation
What if…
If we could start over, what would we want?
Developer-friendly
Simple
Dynamic
Light-weight
Composable / Flexible
Extensible
14
©2017 IBM Corporation
What if…
If we could start over, what would we want?
Developer-friendly
Simple
Dynamic
Light-weight
Composable / Flexible
Extensible
15
selectable content
clear API/SPI
runtime/app isolation
human usable
configuration
©2017 IBM Corporation
What if…
16
grokable
config
provisioning
runtime

only
some combination of

technologies

app-centered
everything
How do we do this?
©2017 IBM Corporation
What if…
17
runtime

only
some combination of

technologies

app-centeredeverything
And yet allow this?
no restarts
©2017 IBM Corporation
What if…
18
And for crying out loud,
can we prevent THIS?!
runtime3rd party

bundle

B
system

bundle

A
Application
X
©2017 IBM Corporation
Configuration
XML for configuration format
Ubiquitous
Expressive
BUT, for simplicity:
single file
usable defaults
19
<server description=“simple”>
<featureManager>
<feature>jsp-2.2</feature>
</featureManager>
<httpEndpoint id=“defaultHttpEndpoint” 

httpPort=“9080” httpsPort=“9443” />
</server>
©2017 IBM Corporation
Configuration
Composable system requires composable config:
Individual components own their config

No centralized repository
No externally defined global config model
20
©2017 IBM Corporation
Building a kernel from scratch
OSGi-based for all the reasons
First-class use of OSGi services
Configuration Admin & Metatype
Dynamic configuration changes
Declarative Services
Runtime composition on-the-fly
21
©2017 IBM Corporation
Provisioning
Two phases of provisioning:
Bootstrap the kernel to get configuration
Runtime provisioning based on configured features
Add/remove features via config update
install/uninstall bundles,
add/remove configuration elements
creation/removal of services!
22
©2017 IBM Corporation
Isolation
We mean this in a good way.
Liberty runtime serves two masters:
Typical Application Server paradigm

(apps strictly separated from runtime) — API
Platform extender paradigm

(the “app” is the runtime) — SPI
23
©2017 IBM Corporation
An ode to classloaders…
©2017 IBM Corporation
</cleanSlate>
Of course, we didn’t really get a clean slate.

Application compatibility had to be
preserved.
But that still gave us a LOT of room…
©2017 IBM Corporation
DEMO!
©2017 IBM Corporation
Liberty + MicroProfile = ❤
27
MicroProfile fits how Liberty works
Focused elements, use what you need
Cloud Native technologies forthcoming
Config, Metrics, Health Check
E2E trace — opentracing.io AND… ?
Caching — JSR 107? 

JSR 107 + CDI + Redis (experiment): 

https://github.com/BarDweller/JSR107-RI-CDI-Redisson-Bluemix
©2017 IBM Corporation
QUESTIONS!

More Related Content

What's hot

Intro to APIs for Hustlers
Intro to APIs for HustlersIntro to APIs for Hustlers
Intro to APIs for Hustlers
Marc Weil
 
Cloud computing
Cloud computingCloud computing
Cloud computing
Pushkar Dutt
 
Serverless Machine Learning Workshop
Serverless Machine Learning WorkshopServerless Machine Learning Workshop
Serverless Machine Learning Workshop
Alex Casalboni
 
Mobile Monday Hamburg, Germany
Mobile Monday Hamburg, GermanyMobile Monday Hamburg, Germany
Mobile Monday Hamburg, Germany
Jeff Haynie
 
Creating a GraphQL API in Python: from Django to fully asynchronous
Creating a GraphQL API in Python: from Django to fully asynchronousCreating a GraphQL API in Python: from Django to fully asynchronous
Creating a GraphQL API in Python: from Django to fully asynchronous
Mirumee Software
 
Voice controlled robot powered by Google Cloud
Voice controlled robot powered by Google CloudVoice controlled robot powered by Google Cloud
Voice controlled robot powered by Google Cloud
Paul Boonyarungsrit
 
PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix
PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM BluemixPyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix
PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix
Jin Gi Kong
 
Building RIA - Comparison between Adobe Flex and GWT - Hu Shunjie
Building RIA - Comparison between Adobe Flex and GWT - Hu ShunjieBuilding RIA - Comparison between Adobe Flex and GWT - Hu Shunjie
Building RIA - Comparison between Adobe Flex and GWT - Hu Shunjie
jasonong
 
Web assembly brings the web to a new era
Web assembly brings the web to a new eraWeb assembly brings the web to a new era
Web assembly brings the web to a new era
Boyan Mihaylov
 
Why Enterprises are Using ASP.NET Core?
Why Enterprises are Using ASP.NET Core?Why Enterprises are Using ASP.NET Core?
Why Enterprises are Using ASP.NET Core?
Marie Weaver
 
Asp.Net Core in Real World
Asp.Net Core in Real WorldAsp.Net Core in Real World
Asp.Net Core in Real World
Emanuele Bartolesi
 
Mvp skill saturday ep09 _06072019_azure updates - july 2019
Mvp skill saturday ep09 _06072019_azure updates - july 2019Mvp skill saturday ep09 _06072019_azure updates - july 2019
Mvp skill saturday ep09 _06072019_azure updates - july 2019
Kumton Suttiraksiri
 
Serverless Dev on AWS
Serverless Dev on AWSServerless Dev on AWS
Serverless Dev on AWS
Bryson Tyrrell
 
APIdays Paris 2019 - Microservices Architectures Agility vs Complexity, by Pr...
APIdays Paris 2019 - Microservices Architectures Agility vs Complexity, by Pr...APIdays Paris 2019 - Microservices Architectures Agility vs Complexity, by Pr...
APIdays Paris 2019 - Microservices Architectures Agility vs Complexity, by Pr...
apidays
 
Pulling Back the Curtain - Robert Ames
Pulling Back the Curtain - Robert AmesPulling Back the Curtain - Robert Ames
Pulling Back the Curtain - Robert Ames
scoopnewsgroup
 

What's hot (15)

Intro to APIs for Hustlers
Intro to APIs for HustlersIntro to APIs for Hustlers
Intro to APIs for Hustlers
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Serverless Machine Learning Workshop
Serverless Machine Learning WorkshopServerless Machine Learning Workshop
Serverless Machine Learning Workshop
 
Mobile Monday Hamburg, Germany
Mobile Monday Hamburg, GermanyMobile Monday Hamburg, Germany
Mobile Monday Hamburg, Germany
 
Creating a GraphQL API in Python: from Django to fully asynchronous
Creating a GraphQL API in Python: from Django to fully asynchronousCreating a GraphQL API in Python: from Django to fully asynchronous
Creating a GraphQL API in Python: from Django to fully asynchronous
 
Voice controlled robot powered by Google Cloud
Voice controlled robot powered by Google CloudVoice controlled robot powered by Google Cloud
Voice controlled robot powered by Google Cloud
 
PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix
PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM BluemixPyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix
PyCon APAC 2016: Django, Flask 고민없이 개발하고 서비스하는 PaaS, IBM Bluemix
 
Building RIA - Comparison between Adobe Flex and GWT - Hu Shunjie
Building RIA - Comparison between Adobe Flex and GWT - Hu ShunjieBuilding RIA - Comparison between Adobe Flex and GWT - Hu Shunjie
Building RIA - Comparison between Adobe Flex and GWT - Hu Shunjie
 
Web assembly brings the web to a new era
Web assembly brings the web to a new eraWeb assembly brings the web to a new era
Web assembly brings the web to a new era
 
Why Enterprises are Using ASP.NET Core?
Why Enterprises are Using ASP.NET Core?Why Enterprises are Using ASP.NET Core?
Why Enterprises are Using ASP.NET Core?
 
Asp.Net Core in Real World
Asp.Net Core in Real WorldAsp.Net Core in Real World
Asp.Net Core in Real World
 
Mvp skill saturday ep09 _06072019_azure updates - july 2019
Mvp skill saturday ep09 _06072019_azure updates - july 2019Mvp skill saturday ep09 _06072019_azure updates - july 2019
Mvp skill saturday ep09 _06072019_azure updates - july 2019
 
Serverless Dev on AWS
Serverless Dev on AWSServerless Dev on AWS
Serverless Dev on AWS
 
APIdays Paris 2019 - Microservices Architectures Agility vs Complexity, by Pr...
APIdays Paris 2019 - Microservices Architectures Agility vs Complexity, by Pr...APIdays Paris 2019 - Microservices Architectures Agility vs Complexity, by Pr...
APIdays Paris 2019 - Microservices Architectures Agility vs Complexity, by Pr...
 
Pulling Back the Curtain - Robert Ames
Pulling Back the Curtain - Robert AmesPulling Back the Curtain - Robert Ames
Pulling Back the Curtain - Robert Ames
 

Viewers also liked

An introduction to property based testing
An introduction to property based testingAn introduction to property based testing
An introduction to property based testing
Scott Wlaschin
 
TABLERO DE INSTRUMENTOS PARA NAVEGACIÓN DE IMPACTO SOCIAL
TABLERO DE INSTRUMENTOS PARA NAVEGACIÓN DE IMPACTO SOCIALTABLERO DE INSTRUMENTOS PARA NAVEGACIÓN DE IMPACTO SOCIAL
TABLERO DE INSTRUMENTOS PARA NAVEGACIÓN DE IMPACTO SOCIAL
MERKABAHNK
 
Glosario de Terminos Informáticos
Glosario de Terminos InformáticosGlosario de Terminos Informáticos
Glosario de Terminos Informáticos
Ruth1503
 
Privatización sanidad madrileña. Consecuencias en Hospital Severo Ochoa. 17-1...
Privatización sanidad madrileña. Consecuencias en Hospital Severo Ochoa. 17-1...Privatización sanidad madrileña. Consecuencias en Hospital Severo Ochoa. 17-1...
Privatización sanidad madrileña. Consecuencias en Hospital Severo Ochoa. 17-1...
Ccoo Hospital Severo Ochoa
 
documento word de informacio de la paes 2012
documento word de informacio de la paes 2012documento word de informacio de la paes 2012
documento word de informacio de la paes 2012josejavierquinteros
 
Nuevo presentación de microsoft office power point
Nuevo presentación de microsoft office power pointNuevo presentación de microsoft office power point
Nuevo presentación de microsoft office power pointjosejavierquinteros
 
Ted07 mejía julio molina daniela_ortíz luis
Ted07 mejía julio molina daniela_ortíz luisTed07 mejía julio molina daniela_ortíz luis
Ted07 mejía julio molina daniela_ortíz luis
danivoy
 
Videoconferencia
VideoconferenciaVideoconferencia
Big continent film - the great wall of china .
Big continent film - the great wall of  china .   Big continent film - the great wall of  china .
Big continent film - the great wall of china .
Deepak Somaji-Sawant
 

Viewers also liked (16)

An introduction to property based testing
An introduction to property based testingAn introduction to property based testing
An introduction to property based testing
 
TABLERO DE INSTRUMENTOS PARA NAVEGACIÓN DE IMPACTO SOCIAL
TABLERO DE INSTRUMENTOS PARA NAVEGACIÓN DE IMPACTO SOCIALTABLERO DE INSTRUMENTOS PARA NAVEGACIÓN DE IMPACTO SOCIAL
TABLERO DE INSTRUMENTOS PARA NAVEGACIÓN DE IMPACTO SOCIAL
 
Glosario de Terminos Informáticos
Glosario de Terminos InformáticosGlosario de Terminos Informáticos
Glosario de Terminos Informáticos
 
Debate
DebateDebate
Debate
 
Privatización sanidad madrileña. Consecuencias en Hospital Severo Ochoa. 17-1...
Privatización sanidad madrileña. Consecuencias en Hospital Severo Ochoa. 17-1...Privatización sanidad madrileña. Consecuencias en Hospital Severo Ochoa. 17-1...
Privatización sanidad madrileña. Consecuencias en Hospital Severo Ochoa. 17-1...
 
Uide loja
Uide lojaUide loja
Uide loja
 
documento word de informacio de la paes 2012
documento word de informacio de la paes 2012documento word de informacio de la paes 2012
documento word de informacio de la paes 2012
 
Nuevo presentación de microsoft office power point
Nuevo presentación de microsoft office power pointNuevo presentación de microsoft office power point
Nuevo presentación de microsoft office power point
 
Focus group
Focus groupFocus group
Focus group
 
Ted07 mejía julio molina daniela_ortíz luis
Ted07 mejía julio molina daniela_ortíz luisTed07 mejía julio molina daniela_ortíz luis
Ted07 mejía julio molina daniela_ortíz luis
 
Videoconferencia
VideoconferenciaVideoconferencia
Videoconferencia
 
Veronica martina cacha espinoza ii ciclo
Veronica martina cacha espinoza  ii cicloVeronica martina cacha espinoza  ii ciclo
Veronica martina cacha espinoza ii ciclo
 
Ted07pacheco rocio. ramirez-manuel.rojas-dalia.
Ted07pacheco rocio. ramirez-manuel.rojas-dalia.Ted07pacheco rocio. ramirez-manuel.rojas-dalia.
Ted07pacheco rocio. ramirez-manuel.rojas-dalia.
 
Big continent film - the great wall of china .
Big continent film - the great wall of  china .   Big continent film - the great wall of  china .
Big continent film - the great wall of china .
 
Jean up
Jean upJean up
Jean up
 
Focus group ppt
Focus group pptFocus group ppt
Focus group ppt
 

Similar to Microprofile at IBM with Liberty

NRB - LUXEMBOURG MAINFRAME DAY 2017 - IBM Z
NRB - LUXEMBOURG MAINFRAME DAY 2017 - IBM ZNRB - LUXEMBOURG MAINFRAME DAY 2017 - IBM Z
NRB - LUXEMBOURG MAINFRAME DAY 2017 - IBM Z
NRB
 
NRB - BE MAINFRAME DAY 2017 - IBM Z
NRB - BE MAINFRAME DAY 2017 - IBM ZNRB - BE MAINFRAME DAY 2017 - IBM Z
NRB - BE MAINFRAME DAY 2017 - IBM Z
NRB
 
PuppetConf 2017 | Adobe Advertising Cloud: A Lean Puppet Workflow to Support ...
PuppetConf 2017 | Adobe Advertising Cloud: A Lean Puppet Workflow to Support ...PuppetConf 2017 | Adobe Advertising Cloud: A Lean Puppet Workflow to Support ...
PuppetConf 2017 | Adobe Advertising Cloud: A Lean Puppet Workflow to Support ...
Nicolas Brousse
 
PuppetConf 2017: Adobe Advertising Cloud: Lean Puppet Workflow to Support Mul...
PuppetConf 2017: Adobe Advertising Cloud: Lean Puppet Workflow to Support Mul...PuppetConf 2017: Adobe Advertising Cloud: Lean Puppet Workflow to Support Mul...
PuppetConf 2017: Adobe Advertising Cloud: Lean Puppet Workflow to Support Mul...
Puppet
 
Building a right sized, do-anything runtime using OSGi technologies: a case s...
Building a right sized, do-anything runtime using OSGi technologies: a case s...Building a right sized, do-anything runtime using OSGi technologies: a case s...
Building a right sized, do-anything runtime using OSGi technologies: a case s...
mfrancis
 
IBM Bluemix OpenWhisk: IBM InterConnect 2017, Las Vegas, USA: Technical Strategy
IBM Bluemix OpenWhisk: IBM InterConnect 2017, Las Vegas, USA: Technical StrategyIBM Bluemix OpenWhisk: IBM InterConnect 2017, Las Vegas, USA: Technical Strategy
IBM Bluemix OpenWhisk: IBM InterConnect 2017, Las Vegas, USA: Technical Strategy
OpenWhisk
 
Servereless Jobs with AWS Lambda
Servereless Jobs with AWS LambdaServereless Jobs with AWS Lambda
Servereless Jobs with AWS Lambda
Jon Gear
 
IBM z/OS Provisioning Toolkit V1.1
IBM z/OS Provisioning Toolkit V1.1IBM z/OS Provisioning Toolkit V1.1
IBM z/OS Provisioning Toolkit V1.1
Matthew Webster
 
OpenWhisk Meetup - Austin, TX 07/2017
OpenWhisk Meetup - Austin, TX 07/2017OpenWhisk Meetup - Austin, TX 07/2017
OpenWhisk Meetup - Austin, TX 07/2017
Carlos Santana
 
IBM Bluemix OpenWhisk: Serverless Conference 2017, Austin, USA: Keynote
IBM Bluemix OpenWhisk: Serverless Conference 2017, Austin, USA: KeynoteIBM Bluemix OpenWhisk: Serverless Conference 2017, Austin, USA: Keynote
IBM Bluemix OpenWhisk: Serverless Conference 2017, Austin, USA: Keynote
OpenWhisk
 
Making everything better with OSGi - a happy case study in building a really ...
Making everything better with OSGi - a happy case study in building a really ...Making everything better with OSGi - a happy case study in building a really ...
Making everything better with OSGi - a happy case study in building a really ...
mfrancis
 
DevOps@Scale- IBM Cloud and NetAp-Insight-Berlin
DevOps@Scale- IBM Cloud and NetAp-Insight-BerlinDevOps@Scale- IBM Cloud and NetAp-Insight-Berlin
DevOps@Scale- IBM Cloud and NetAp-Insight-Berlin
Sreeni Pamidala
 
IBM z/OS Provisioning Toolkit v1.0.2
IBM z/OS Provisioning Toolkit v1.0.2IBM z/OS Provisioning Toolkit v1.0.2
IBM z/OS Provisioning Toolkit v1.0.2
Matthew Webster
 
End User Computing with NetApp
End User Computing with NetAppEnd User Computing with NetApp
End User Computing with NetApp
NetApp
 
IBM Power Systems Update 1Q17
IBM Power Systems Update 1Q17IBM Power Systems Update 1Q17
IBM Power Systems Update 1Q17
David Spurway
 
S903 palla
S903 pallaS903 palla
S903 palla
Andrew Khoury
 
Cloud administration
Cloud administrationCloud administration
Cloud administration
André Luís Cardoso
 
All you know about ASP.NET deployment is wrong!
All you know about ASP.NET deployment is wrong!All you know about ASP.NET deployment is wrong!
All you know about ASP.NET deployment is wrong!
Roger Pence
 
Getting to the Next Level with Eclipse Concierge - Jan Rellermeyer + Tim Verb...
Getting to the Next Level with Eclipse Concierge - Jan Rellermeyer + Tim Verb...Getting to the Next Level with Eclipse Concierge - Jan Rellermeyer + Tim Verb...
Getting to the Next Level with Eclipse Concierge - Jan Rellermeyer + Tim Verb...
mfrancis
 
Bridging Your Business Across the Enterprise and Cloud with MongoDB and NetApp
Bridging Your Business Across the Enterprise and Cloud with MongoDB and NetAppBridging Your Business Across the Enterprise and Cloud with MongoDB and NetApp
Bridging Your Business Across the Enterprise and Cloud with MongoDB and NetApp
MongoDB
 

Similar to Microprofile at IBM with Liberty (20)

NRB - LUXEMBOURG MAINFRAME DAY 2017 - IBM Z
NRB - LUXEMBOURG MAINFRAME DAY 2017 - IBM ZNRB - LUXEMBOURG MAINFRAME DAY 2017 - IBM Z
NRB - LUXEMBOURG MAINFRAME DAY 2017 - IBM Z
 
NRB - BE MAINFRAME DAY 2017 - IBM Z
NRB - BE MAINFRAME DAY 2017 - IBM ZNRB - BE MAINFRAME DAY 2017 - IBM Z
NRB - BE MAINFRAME DAY 2017 - IBM Z
 
PuppetConf 2017 | Adobe Advertising Cloud: A Lean Puppet Workflow to Support ...
PuppetConf 2017 | Adobe Advertising Cloud: A Lean Puppet Workflow to Support ...PuppetConf 2017 | Adobe Advertising Cloud: A Lean Puppet Workflow to Support ...
PuppetConf 2017 | Adobe Advertising Cloud: A Lean Puppet Workflow to Support ...
 
PuppetConf 2017: Adobe Advertising Cloud: Lean Puppet Workflow to Support Mul...
PuppetConf 2017: Adobe Advertising Cloud: Lean Puppet Workflow to Support Mul...PuppetConf 2017: Adobe Advertising Cloud: Lean Puppet Workflow to Support Mul...
PuppetConf 2017: Adobe Advertising Cloud: Lean Puppet Workflow to Support Mul...
 
Building a right sized, do-anything runtime using OSGi technologies: a case s...
Building a right sized, do-anything runtime using OSGi technologies: a case s...Building a right sized, do-anything runtime using OSGi technologies: a case s...
Building a right sized, do-anything runtime using OSGi technologies: a case s...
 
IBM Bluemix OpenWhisk: IBM InterConnect 2017, Las Vegas, USA: Technical Strategy
IBM Bluemix OpenWhisk: IBM InterConnect 2017, Las Vegas, USA: Technical StrategyIBM Bluemix OpenWhisk: IBM InterConnect 2017, Las Vegas, USA: Technical Strategy
IBM Bluemix OpenWhisk: IBM InterConnect 2017, Las Vegas, USA: Technical Strategy
 
Servereless Jobs with AWS Lambda
Servereless Jobs with AWS LambdaServereless Jobs with AWS Lambda
Servereless Jobs with AWS Lambda
 
IBM z/OS Provisioning Toolkit V1.1
IBM z/OS Provisioning Toolkit V1.1IBM z/OS Provisioning Toolkit V1.1
IBM z/OS Provisioning Toolkit V1.1
 
OpenWhisk Meetup - Austin, TX 07/2017
OpenWhisk Meetup - Austin, TX 07/2017OpenWhisk Meetup - Austin, TX 07/2017
OpenWhisk Meetup - Austin, TX 07/2017
 
IBM Bluemix OpenWhisk: Serverless Conference 2017, Austin, USA: Keynote
IBM Bluemix OpenWhisk: Serverless Conference 2017, Austin, USA: KeynoteIBM Bluemix OpenWhisk: Serverless Conference 2017, Austin, USA: Keynote
IBM Bluemix OpenWhisk: Serverless Conference 2017, Austin, USA: Keynote
 
Making everything better with OSGi - a happy case study in building a really ...
Making everything better with OSGi - a happy case study in building a really ...Making everything better with OSGi - a happy case study in building a really ...
Making everything better with OSGi - a happy case study in building a really ...
 
DevOps@Scale- IBM Cloud and NetAp-Insight-Berlin
DevOps@Scale- IBM Cloud and NetAp-Insight-BerlinDevOps@Scale- IBM Cloud and NetAp-Insight-Berlin
DevOps@Scale- IBM Cloud and NetAp-Insight-Berlin
 
IBM z/OS Provisioning Toolkit v1.0.2
IBM z/OS Provisioning Toolkit v1.0.2IBM z/OS Provisioning Toolkit v1.0.2
IBM z/OS Provisioning Toolkit v1.0.2
 
End User Computing with NetApp
End User Computing with NetAppEnd User Computing with NetApp
End User Computing with NetApp
 
IBM Power Systems Update 1Q17
IBM Power Systems Update 1Q17IBM Power Systems Update 1Q17
IBM Power Systems Update 1Q17
 
S903 palla
S903 pallaS903 palla
S903 palla
 
Cloud administration
Cloud administrationCloud administration
Cloud administration
 
All you know about ASP.NET deployment is wrong!
All you know about ASP.NET deployment is wrong!All you know about ASP.NET deployment is wrong!
All you know about ASP.NET deployment is wrong!
 
Getting to the Next Level with Eclipse Concierge - Jan Rellermeyer + Tim Verb...
Getting to the Next Level with Eclipse Concierge - Jan Rellermeyer + Tim Verb...Getting to the Next Level with Eclipse Concierge - Jan Rellermeyer + Tim Verb...
Getting to the Next Level with Eclipse Concierge - Jan Rellermeyer + Tim Verb...
 
Bridging Your Business Across the Enterprise and Cloud with MongoDB and NetApp
Bridging Your Business Across the Enterprise and Cloud with MongoDB and NetAppBridging Your Business Across the Enterprise and Cloud with MongoDB and NetApp
Bridging Your Business Across the Enterprise and Cloud with MongoDB and NetApp
 

Recently uploaded

When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 
НАДІЯ ФЕДЮШКО БАЦ «Професійне зростання QA спеціаліста»
НАДІЯ ФЕДЮШКО БАЦ  «Професійне зростання QA спеціаліста»НАДІЯ ФЕДЮШКО БАЦ  «Професійне зростання QA спеціаліста»
НАДІЯ ФЕДЮШКО БАЦ «Професійне зростання QA спеціаліста»
QADay
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical Futures
Bhaskar Mitra
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
Elena Simperl
 

Recently uploaded (20)

When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
НАДІЯ ФЕДЮШКО БАЦ «Професійне зростання QA спеціаліста»
НАДІЯ ФЕДЮШКО БАЦ  «Професійне зростання QA спеціаліста»НАДІЯ ФЕДЮШКО БАЦ  «Професійне зростання QA спеціаліста»
НАДІЯ ФЕДЮШКО БАЦ «Професійне зростання QA спеціаліста»
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical Futures
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 

Microprofile at IBM with Liberty

  • 1. ©2017 IBM Corporation MicroProfile at IBM: Erin Schnabel schnabel@us.ibm.com @ebullientworks Enabling creation of Cloud Native applications 
 and Microservices with Liberty Alasdair Nottingham alasdair@us.ibm.com @nottycode
  • 3. ©2017 IBM Corporation Names you might recognize… Kevin Sutter
 WebSphere Java EE Architect sutter@us.ibm.com Alasdair Nottingham
 WebSphere Liberty Architect alasdair@us.ibm.com Erin Schnabel
 Cloud Native Developer Services schnabel@us.ibm.com Emily Jiang
 MicroProfile Development Lead emijiang@uk.ibm.com
  • 6. ©2017 IBM Corporation 6 WebSphere Application Server (the full profile) has been around forever. Big codebase Big customer base Big workloads … Big inhibitors to massive change
 History
  • 7. ©2017 IBM Corporation History WebSphere Application Server (the full profile) has been around forever. Big codebase Big customer base Big workloads … Big inhibitors to massive change
 7 This is not a complaint. This is a problem we are
 happy to have.
  • 8. ©2017 IBM Corporation History WebSphere Application Server (the full profile) has been around forever. Big codebase Big customer base Big workloads … Big inhibitors to massive change
 8 This is not a complaint. This is a problem we are
 happy to have. But it is still a problem.
  • 9. ©2017 IBM Corporation Code that has been around forever… If your code lives long enough, 
 and is used enough, 
 it ends up looking like… 
 9
  • 10. ©2017 IBM Corporation Code that has been around forever… 10 dragons
  • 11. ©2017 IBM Corporation Code that has been around forever… 11 dragons ?! Especially code that has roots 
 going back to late ‘90s…
  • 14. ©2017 IBM Corporation What if… If we could start over, what would we want? Developer-friendly Simple Dynamic Light-weight Composable / Flexible Extensible 14
  • 15. ©2017 IBM Corporation What if… If we could start over, what would we want? Developer-friendly Simple Dynamic Light-weight Composable / Flexible Extensible 15 selectable content clear API/SPI runtime/app isolation human usable configuration
  • 16. ©2017 IBM Corporation What if… 16 grokable config provisioning runtime
 only some combination of
 technologies
 app-centered everything How do we do this?
  • 17. ©2017 IBM Corporation What if… 17 runtime
 only some combination of
 technologies
 app-centeredeverything And yet allow this? no restarts
  • 18. ©2017 IBM Corporation What if… 18 And for crying out loud, can we prevent THIS?! runtime3rd party
 bundle
 B system
 bundle
 A Application X
  • 19. ©2017 IBM Corporation Configuration XML for configuration format Ubiquitous Expressive BUT, for simplicity: single file usable defaults 19 <server description=“simple”> <featureManager> <feature>jsp-2.2</feature> </featureManager> <httpEndpoint id=“defaultHttpEndpoint” 
 httpPort=“9080” httpsPort=“9443” /> </server>
  • 20. ©2017 IBM Corporation Configuration Composable system requires composable config: Individual components own their config
 No centralized repository No externally defined global config model 20
  • 21. ©2017 IBM Corporation Building a kernel from scratch OSGi-based for all the reasons First-class use of OSGi services Configuration Admin & Metatype Dynamic configuration changes Declarative Services Runtime composition on-the-fly 21
  • 22. ©2017 IBM Corporation Provisioning Two phases of provisioning: Bootstrap the kernel to get configuration Runtime provisioning based on configured features Add/remove features via config update install/uninstall bundles, add/remove configuration elements creation/removal of services! 22
  • 23. ©2017 IBM Corporation Isolation We mean this in a good way. Liberty runtime serves two masters: Typical Application Server paradigm
 (apps strictly separated from runtime) — API Platform extender paradigm
 (the “app” is the runtime) — SPI 23
  • 24. ©2017 IBM Corporation An ode to classloaders…
  • 25. ©2017 IBM Corporation </cleanSlate> Of course, we didn’t really get a clean slate.
 Application compatibility had to be preserved. But that still gave us a LOT of room…
  • 27. ©2017 IBM Corporation Liberty + MicroProfile = ❤ 27 MicroProfile fits how Liberty works Focused elements, use what you need Cloud Native technologies forthcoming Config, Metrics, Health Check E2E trace — opentracing.io AND… ? Caching — JSR 107? 
 JSR 107 + CDI + Redis (experiment): 
 https://github.com/BarDweller/JSR107-RI-CDI-Redisson-Bluemix