SlideShare uma empresa Scribd logo
1 de 17
Baixar para ler offline
Oracle’s Recent Changes to
Java (JDK)
Overview, Impact & Recommendations
1Neil Brown, Issue: 2710/18.
Overview
Oracle recently made several changes affecting how they maintain, support &
license use of Java (more accurately the JDK).
This has commercial & technical implications for all enterprises running apps on
the JVM (users of the JDK)
● Impacts all apps that run on the JVM - regardless of language (Java, Groovy,
Scala)
● Anyone responsible for developing or provisioning JVM apps for prod usage
needs to aware
● Don’t panic! Java is still free. And changes broadly positive.
2
Java Terminology
Java SE (JSE) - Specification of Java language including APIs (Owned by Oracle)
Java Development Kit (JDK) - A binary implementation of JSE, plus some other
supporting tools and utilities.
OpenJDK - OSS project for source implementation of JSE that has served as RI of
the JSE since JDK 7.
OpenJDK binary - A build & packaged distribution of OpenJDK source. Several
exist, free (unbranded) & commercial (branded), produced by different entities
3
What Java users are accustomed to prior to changes
Oracle provides the ‘standard’ JDK
● Oracle (before them Sun) have provided the de facto standard JDK for all
popular platforms (Win, OS X, x86); & underwritten quality
Scheduling of Java Feature Releases (e.g. ..., 7, 8. 9)
● Fixed scope (set of new features and enhancements); Variable release date
(not shipped until feature complete; known to slip, significantly).
4
What Java users are accustomed to prior to changes
Java - Stable, Secure and Zero Cost (Overlapping, Long Term, Free Updates)
● “Stable” - Oracle provide free updates for old JDK versions, for considerable
period after new versions released, e.g.
○ JDK 7 released = July 2011; End of free public updates = April 2015. (~4 years)
○ JDK 8 released = March 2014; End of free public updates = Jan 2019 (~5 years)
○ Long overlap overlap provides ‘stability’ - users have plenty of time to wait for battle-testing &
test upgrade to new versions, whilst still benefiting from fixes & security patches to current
● “Secure” - Oracle produced free update releases to Oracle JDK containing
rolled-up security patches, every 3 months. (Including backporting to old
versions of JDK that’re still receiving free public updates).
5
What Java users are accustomed to prior to changes
Java - Stable, Secure and Zero Cost (Overlapping, Long Term Free Updates)
● Zero Cost - For desktop and server apps (only), the Oracle JDK has been
free to use in production.
6
What’s Changed & Why?
1) Java SE Release Schedule
● Given delays in past releases (e.g. JDK 9/Modules), dev feedback & trends,
Oracle switched to a time-based release schedule
● New feature release (10, 11, 12...) of Java, every 6 months.
● +ves - Faster pace of innovation. Devs get new features as soon as complete
● However...also led to Oracle changing approach to maintaining (updating)
and supporting Java...
7
What’s Changed & Why?
2) Oracle Changes to JDK Maintenance & (Oracle) Support
● Shorter duration of free/public updates provided by Oracle (only)
○ Free updates (fixes & security patches) to OpenJDK only provided for 6 months after
release (until the next feature release), rather than several years. No longer an overlap! e.g.
JDK 10 - Released March 2018; End of public updates = Sept 2018. (Already EoL)
JDK 11 - Released Sept 2018; End of public updates = March 2019.
● Availability of (Paid) Oracle (only) Support
○ Oracle designating some JDK releases as Long Term Support (LTS) for their purposes
(One every 2 or 3 years / 6th feature release - (8), 11, 17, 23, ...).
○ LTS releases get paid Oracle support for min 5 years.
○ Oracle NOT offering any support (even paid) for non-LTS releases (9, 10, 12...)
8
Picture credit: Simon Ritter, Azul Systems
What’s Changed & Why?
Oracle-specific update &
support policy.
Other support offerings
available from limited no.
other vendors.
9
What’s Changed & Why?
3) Licensing of Oracle JDK
● From JDK 11 (released 09/2018) Oracle JDK now requires license in prod
for all deployments (including servers). (Still usable for free in dev & test).
● Pre JDK 11, licensing terms are unchanged e.g. can continue to use Oracle
JDK 8 in prod indefinitely
10
General Impact of Changes to Oracle Updates & Support
Based on what’s known today*, you can only have 2 of 3 previously described
stability, security, zero-cost (must sacrifice one, to some extent). (*See slide 13).
Option 1 - Secure & Free, But sacrifice Stability
● Case - Security important, but don’t want to spend any money...
● To ensure availability of security updates you need to commit to switching to
major new versions of the JDK immediately on release (every 6 months)
● Reduces stability - Adopt new releases in prod before battle-tested by others
● Also a commitment to regression test and possibly update app (if breaking
changes) every 6 months
11
Option 2 - Stable & Free, But sacrifice Security (May be avoidable*)
● Stability at zero cost still possible by staying on previous LTS release (e.g. 8) after new
one (e.g. 9) released, & upgrading at leisure. But (as of today) no guarantee continue to
receive free updates (inc. security patches) when Oracle cease to provide them.
Option 3 - Secure & Stable, But not free (May be avoidable*)
● To get stability & security as before, might now need to pay for it.
● Can continue to use previous LTS release (e.g. 8 or 11), but (as of today) access to
updates after 6 months only guaranteed with commercial support contract from vendor
● Also, to receive updates for non-LTS releases almost certainly need commercial
support contract, which fewer vendors are offering (not Oracle)
General Impact of Changes to Oracle Updates & Support
12
*Future provision of overlapping free updates for previous JDK releases relies on
continued contribution to OpenJDK from other parties, which is still TBC -
● Requires other OpenJDK committers donate effort to backport updates (fixes &
security updates) after Oracle ceases; And other orgs to provide builds
● +ve - RedHat & others already do it for JDK 6 & 7. And Linux distro builds. But
Oracle changes create greater maintenance burden - more releases, earlier
● -ve - As of today no one yet appointed maintenance leads for JDK 8U, 9U, 10U
● Expectation - RedHat & others continue to provide updates, but for Oracle’s
LTS releases (only), starting with JDK 8.
○ If happens, can still have Stable, Secure & Free - but ONLY for LTS releases
General Impact of Changes to Oracle Updates & Support
13
Potential Benefits of Paid Support
1. Retain stability - Might not be necessary, hopefully long term, overlapping
updates to LTS releases continue to be provided by other OpenJDK committers
2. Obtain updates to non-LTS releases in prod - Nobody offering this for free.
And only a subset of support vendors offering it.
3. Support Java - Paying for support is one way to show support for Java. There
are also other, more direct ways to support Java OSS community.
14
My Advice for JVM dev teams
If/while you company is not paying for JDK support -
1) Choice of JDK
1. Do not start using Oracle JDK in prod - If you don’t have a license.
2. Do not start using Oracle OpenJDK in prod - It will only receives updates for 6
months
3. Review current choice JDK in few months when each provider’s position clearer
on key criteria
a. Length of time new builds produced for JDK update releases (both LTS and non-LTS)
b. Quality of builds - Primarily testing for JSE conformance (TCK tests).
4. AdoptOpenJDK may become best free JDK to use with respect to criteria
15
My Advice for JVM dev teams
2) JDK Release Adoption
● Only use LTS JDK releases (currently 8 or 11) in prod
○ Maximises likelihood you’ll continue to benefit from free updates for > 6 months (stable,
secure, free)
● Otherwise...before just adopting non-LTS JDK releases (9, 10, 12,...) in prod,
ensure you discuss and understand trade-offs & risks -
○ No free updates (including security patches) after 6 months
○ Reduces future paid support options (e.g. Oracle don’t offer it for non-LTS)
○ Is adoption of a non-LTS release really essential for biz?
16
Thanks for attending
Neil Brown
@neiljbrown neiljbrown.com
17

Mais conteúdo relacionado

Semelhante a 2018 10-oracle-java-licensing-update-support-changes

Java Support: What's changing
Java Support:  What's changingJava Support:  What's changing
Java Support: What's changingSimon Ritter
 
Java Is Still Free
Java Is Still FreeJava Is Still Free
Java Is Still FreeSimon Ritter
 
OpenJDK-Zulu talk at JEEConf'14
OpenJDK-Zulu talk at JEEConf'14OpenJDK-Zulu talk at JEEConf'14
OpenJDK-Zulu talk at JEEConf'14Ivan Krylov
 
How to Choose a JDK
How to Choose a JDKHow to Choose a JDK
How to Choose a JDKSimon Ritter
 
Version 1 Oracle Java Licensing changes -- what is really going on-feb2020-pdf
Version 1   Oracle Java Licensing changes -- what is really going on-feb2020-pdfVersion 1   Oracle Java Licensing changes -- what is really going on-feb2020-pdf
Version 1 Oracle Java Licensing changes -- what is really going on-feb2020-pdfPaul Bullen
 
Java: how to thrive in the changing world
Java: how to thrive in the changing worldJava: how to thrive in the changing world
Java: how to thrive in the changing worldAlexey Fyodorov
 
12.1.3 Patch Baseline and Strategy
12.1.3 Patch Baseline and Strategy12.1.3 Patch Baseline and Strategy
12.1.3 Patch Baseline and StrategyDavid Kelly
 
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"GlobalLogic Ukraine
 
Is An Agile Standard Possible For Java?
Is An Agile Standard Possible For Java?Is An Agile Standard Possible For Java?
Is An Agile Standard Possible For Java?Simon Ritter
 

Semelhante a 2018 10-oracle-java-licensing-update-support-changes (20)

Java Support: What's changing
Java Support:  What's changingJava Support:  What's changing
Java Support: What's changing
 
Java Is Still Free
Java Is Still FreeJava Is Still Free
Java Is Still Free
 
OpenJDK-Zulu talk at JEEConf'14
OpenJDK-Zulu talk at JEEConf'14OpenJDK-Zulu talk at JEEConf'14
OpenJDK-Zulu talk at JEEConf'14
 
How to Choose a JDK
How to Choose a JDKHow to Choose a JDK
How to Choose a JDK
 
Version 1 Oracle Java Licensing changes -- what is really going on-feb2020-pdf
Version 1   Oracle Java Licensing changes -- what is really going on-feb2020-pdfVersion 1   Oracle Java Licensing changes -- what is really going on-feb2020-pdf
Version 1 Oracle Java Licensing changes -- what is really going on-feb2020-pdf
 
Javantura v6 - Java SE, Today and Tomorrow - Dalibor Topic
Javantura v6 - Java SE, Today and Tomorrow - Dalibor TopicJavantura v6 - Java SE, Today and Tomorrow - Dalibor Topic
Javantura v6 - Java SE, Today and Tomorrow - Dalibor Topic
 
Java: how to thrive in the changing world
Java: how to thrive in the changing worldJava: how to thrive in the changing world
Java: how to thrive in the changing world
 
Oracle Java License Training
Oracle Java License TrainingOracle Java License Training
Oracle Java License Training
 
Java Licensing Roadmap for Oracle License Management
Java Licensing Roadmap for Oracle License ManagementJava Licensing Roadmap for Oracle License Management
Java Licensing Roadmap for Oracle License Management
 
Java 2012 conference keynote - Java Strategy & Roadmap - WebLogic & GlassFish...
Java 2012 conference keynote - Java Strategy & Roadmap - WebLogic & GlassFish...Java 2012 conference keynote - Java Strategy & Roadmap - WebLogic & GlassFish...
Java 2012 conference keynote - Java Strategy & Roadmap - WebLogic & GlassFish...
 
Java Licensing Roadmap for Oracle License Management
Java Licensing Roadmap for Oracle License ManagementJava Licensing Roadmap for Oracle License Management
Java Licensing Roadmap for Oracle License Management
 
Comparison between Oracle JDK, Oracle OpenJDK, and Red Hat OpenJDK.v1.0.20191009
Comparison between Oracle JDK, Oracle OpenJDK, and Red Hat OpenJDK.v1.0.20191009Comparison between Oracle JDK, Oracle OpenJDK, and Red Hat OpenJDK.v1.0.20191009
Comparison between Oracle JDK, Oracle OpenJDK, and Red Hat OpenJDK.v1.0.20191009
 
Javantura v6 - JDK 11 & JDK 12 - Dalibor Topic
Javantura v6 - JDK 11 & JDK 12 - Dalibor TopicJavantura v6 - JDK 11 & JDK 12 - Dalibor Topic
Javantura v6 - JDK 11 & JDK 12 - Dalibor Topic
 
12.1.3 Patch Baseline and Strategy
12.1.3 Patch Baseline and Strategy12.1.3 Patch Baseline and Strategy
12.1.3 Patch Baseline and Strategy
 
Comparison between Oracle JDK, Oracle OpenJDK, and Red Hat OpenJDK
Comparison between Oracle JDK, Oracle OpenJDK, and Red Hat OpenJDKComparison between Oracle JDK, Oracle OpenJDK, and Red Hat OpenJDK
Comparison between Oracle JDK, Oracle OpenJDK, and Red Hat OpenJDK
 
Java 9 and Beyond
Java 9 and BeyondJava 9 and Beyond
Java 9 and Beyond
 
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"
 
GlassFish Article September 07
GlassFish Article September 07GlassFish Article September 07
GlassFish Article September 07
 
JDK 10 Java Module System
JDK 10 Java Module SystemJDK 10 Java Module System
JDK 10 Java Module System
 
Is An Agile Standard Possible For Java?
Is An Agile Standard Possible For Java?Is An Agile Standard Possible For Java?
Is An Agile Standard Possible For Java?
 

Último

What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number SystemsJheuzeDellosa
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 

Último (20)

What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number Systems
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 

2018 10-oracle-java-licensing-update-support-changes

  • 1. Oracle’s Recent Changes to Java (JDK) Overview, Impact & Recommendations 1Neil Brown, Issue: 2710/18.
  • 2. Overview Oracle recently made several changes affecting how they maintain, support & license use of Java (more accurately the JDK). This has commercial & technical implications for all enterprises running apps on the JVM (users of the JDK) ● Impacts all apps that run on the JVM - regardless of language (Java, Groovy, Scala) ● Anyone responsible for developing or provisioning JVM apps for prod usage needs to aware ● Don’t panic! Java is still free. And changes broadly positive. 2
  • 3. Java Terminology Java SE (JSE) - Specification of Java language including APIs (Owned by Oracle) Java Development Kit (JDK) - A binary implementation of JSE, plus some other supporting tools and utilities. OpenJDK - OSS project for source implementation of JSE that has served as RI of the JSE since JDK 7. OpenJDK binary - A build & packaged distribution of OpenJDK source. Several exist, free (unbranded) & commercial (branded), produced by different entities 3
  • 4. What Java users are accustomed to prior to changes Oracle provides the ‘standard’ JDK ● Oracle (before them Sun) have provided the de facto standard JDK for all popular platforms (Win, OS X, x86); & underwritten quality Scheduling of Java Feature Releases (e.g. ..., 7, 8. 9) ● Fixed scope (set of new features and enhancements); Variable release date (not shipped until feature complete; known to slip, significantly). 4
  • 5. What Java users are accustomed to prior to changes Java - Stable, Secure and Zero Cost (Overlapping, Long Term, Free Updates) ● “Stable” - Oracle provide free updates for old JDK versions, for considerable period after new versions released, e.g. ○ JDK 7 released = July 2011; End of free public updates = April 2015. (~4 years) ○ JDK 8 released = March 2014; End of free public updates = Jan 2019 (~5 years) ○ Long overlap overlap provides ‘stability’ - users have plenty of time to wait for battle-testing & test upgrade to new versions, whilst still benefiting from fixes & security patches to current ● “Secure” - Oracle produced free update releases to Oracle JDK containing rolled-up security patches, every 3 months. (Including backporting to old versions of JDK that’re still receiving free public updates). 5
  • 6. What Java users are accustomed to prior to changes Java - Stable, Secure and Zero Cost (Overlapping, Long Term Free Updates) ● Zero Cost - For desktop and server apps (only), the Oracle JDK has been free to use in production. 6
  • 7. What’s Changed & Why? 1) Java SE Release Schedule ● Given delays in past releases (e.g. JDK 9/Modules), dev feedback & trends, Oracle switched to a time-based release schedule ● New feature release (10, 11, 12...) of Java, every 6 months. ● +ves - Faster pace of innovation. Devs get new features as soon as complete ● However...also led to Oracle changing approach to maintaining (updating) and supporting Java... 7
  • 8. What’s Changed & Why? 2) Oracle Changes to JDK Maintenance & (Oracle) Support ● Shorter duration of free/public updates provided by Oracle (only) ○ Free updates (fixes & security patches) to OpenJDK only provided for 6 months after release (until the next feature release), rather than several years. No longer an overlap! e.g. JDK 10 - Released March 2018; End of public updates = Sept 2018. (Already EoL) JDK 11 - Released Sept 2018; End of public updates = March 2019. ● Availability of (Paid) Oracle (only) Support ○ Oracle designating some JDK releases as Long Term Support (LTS) for their purposes (One every 2 or 3 years / 6th feature release - (8), 11, 17, 23, ...). ○ LTS releases get paid Oracle support for min 5 years. ○ Oracle NOT offering any support (even paid) for non-LTS releases (9, 10, 12...) 8
  • 9. Picture credit: Simon Ritter, Azul Systems What’s Changed & Why? Oracle-specific update & support policy. Other support offerings available from limited no. other vendors. 9
  • 10. What’s Changed & Why? 3) Licensing of Oracle JDK ● From JDK 11 (released 09/2018) Oracle JDK now requires license in prod for all deployments (including servers). (Still usable for free in dev & test). ● Pre JDK 11, licensing terms are unchanged e.g. can continue to use Oracle JDK 8 in prod indefinitely 10
  • 11. General Impact of Changes to Oracle Updates & Support Based on what’s known today*, you can only have 2 of 3 previously described stability, security, zero-cost (must sacrifice one, to some extent). (*See slide 13). Option 1 - Secure & Free, But sacrifice Stability ● Case - Security important, but don’t want to spend any money... ● To ensure availability of security updates you need to commit to switching to major new versions of the JDK immediately on release (every 6 months) ● Reduces stability - Adopt new releases in prod before battle-tested by others ● Also a commitment to regression test and possibly update app (if breaking changes) every 6 months 11
  • 12. Option 2 - Stable & Free, But sacrifice Security (May be avoidable*) ● Stability at zero cost still possible by staying on previous LTS release (e.g. 8) after new one (e.g. 9) released, & upgrading at leisure. But (as of today) no guarantee continue to receive free updates (inc. security patches) when Oracle cease to provide them. Option 3 - Secure & Stable, But not free (May be avoidable*) ● To get stability & security as before, might now need to pay for it. ● Can continue to use previous LTS release (e.g. 8 or 11), but (as of today) access to updates after 6 months only guaranteed with commercial support contract from vendor ● Also, to receive updates for non-LTS releases almost certainly need commercial support contract, which fewer vendors are offering (not Oracle) General Impact of Changes to Oracle Updates & Support 12
  • 13. *Future provision of overlapping free updates for previous JDK releases relies on continued contribution to OpenJDK from other parties, which is still TBC - ● Requires other OpenJDK committers donate effort to backport updates (fixes & security updates) after Oracle ceases; And other orgs to provide builds ● +ve - RedHat & others already do it for JDK 6 & 7. And Linux distro builds. But Oracle changes create greater maintenance burden - more releases, earlier ● -ve - As of today no one yet appointed maintenance leads for JDK 8U, 9U, 10U ● Expectation - RedHat & others continue to provide updates, but for Oracle’s LTS releases (only), starting with JDK 8. ○ If happens, can still have Stable, Secure & Free - but ONLY for LTS releases General Impact of Changes to Oracle Updates & Support 13
  • 14. Potential Benefits of Paid Support 1. Retain stability - Might not be necessary, hopefully long term, overlapping updates to LTS releases continue to be provided by other OpenJDK committers 2. Obtain updates to non-LTS releases in prod - Nobody offering this for free. And only a subset of support vendors offering it. 3. Support Java - Paying for support is one way to show support for Java. There are also other, more direct ways to support Java OSS community. 14
  • 15. My Advice for JVM dev teams If/while you company is not paying for JDK support - 1) Choice of JDK 1. Do not start using Oracle JDK in prod - If you don’t have a license. 2. Do not start using Oracle OpenJDK in prod - It will only receives updates for 6 months 3. Review current choice JDK in few months when each provider’s position clearer on key criteria a. Length of time new builds produced for JDK update releases (both LTS and non-LTS) b. Quality of builds - Primarily testing for JSE conformance (TCK tests). 4. AdoptOpenJDK may become best free JDK to use with respect to criteria 15
  • 16. My Advice for JVM dev teams 2) JDK Release Adoption ● Only use LTS JDK releases (currently 8 or 11) in prod ○ Maximises likelihood you’ll continue to benefit from free updates for > 6 months (stable, secure, free) ● Otherwise...before just adopting non-LTS JDK releases (9, 10, 12,...) in prod, ensure you discuss and understand trade-offs & risks - ○ No free updates (including security patches) after 6 months ○ Reduces future paid support options (e.g. Oracle don’t offer it for non-LTS) ○ Is adoption of a non-LTS release really essential for biz? 16
  • 17. Thanks for attending Neil Brown @neiljbrown neiljbrown.com 17