Topics

Featured in Development

Peter Alvaro talks about the reasons one should engage in language design and why many of us would (or should) do something so perverse as to design a language that no one will ever use. He shares some of the extreme and sometimes obnoxious opinions that guided his design process.

Featured in AI, ML & Data Engineering

Today on The InfoQ Podcast, Wes talks with Katharine Jarmul about privacy and fairness in machine learning algorithms. Jarul discusses what’s meant by Ethical Machine Learning and some things to consider when working towards achieving fairness. Jarmul is the co-founder at KIProtect a machine learning security and privacy firm based in Germany and is one of the three keynote speakers at QCon.ai.

Featured in Culture & Methods

Organizations struggle to scale their agility. While every organization is different, common patterns explain the major challenges that most organizations face: organizational design, trying to copy others, “one-size-fits-all” scaling, scaling in siloes, and neglecting engineering practices. This article explains why, what to do about it, and how the three leading scaling frameworks compare.

Launched in 2014, Payara was based on the open-source edition of GlassFish 4.1 while being maintained by Oracle at the time. Payara has strived to provide outstanding customer support by being open-source, small/simple/powerful and compatible with major cloud platforms.

During the recent webinar, a question was raised about the upstream/downstream relationship Payara has with GlassFish in terms of changes and fixes. Millidge explained:

That's undecided at the moment. Obviously, we are members of Jakarta EE and part of the EE4J project. We will be doing some work on GlassFish to get it through to be Jakarta EE 8 certified. After that, it depends on who is supporting GlassFish in the Eclipse Foundation. Our primary goal is Payara itself. We haven't fed all the bug fixes in Payara into GlassFish.

We are quite different from GlassFish nowadays from our source code tree because we have been split off for about four years. If major bugs go into the GlassFish source, we tend to incorporate them into Payara. But after GlassFish 5.2, we will still be around and we will still be working in the Eclipse Foundation on lots of the major components that are in GlassFish, for example, Grizzly, HK2, JPA, EclipseLink, Yasson. A lot of the implementations of the specifications in Eclipse and we will be developing them there. What happens to our involvement of GlassFish core server itself will depend on the involvement of others.

One of the first things we're going to do is to adopt the newly re-released Jakarta versions of many of the Java EE and GlassFish components into Payara. For some components, such as the JASPIC and JTA APIs, this will be relatively straightforward. For others, such as Mojarra, we'd first need to re-align our patched version with the upstream Jakarta version. We'd expect, without guarantees of course, to have a bunch of this work done for the coming Payara 5.191 release.

Payara 5.191

Released on March 6, Payara 5.191 includes new features such as: return of the help documentation; remotely invoke EJBs through a JAX-RS endpoint; support for MicroProfile 2.1; and a new command line parameter, contextroot, to define a context root while deploying a Payara Micro application.

Due to Oracle licensing restrictions, it was necessary for Payara to remove the help documentation before Oracle donated GlassFish to the Eclipse Foundation. With the recent GA release GlassFish 5.1, these restrictions were lifted and Payara was able to include the help documentation in version 5.191.

An example, shown below, demonstrates how to use the new command line parameter to define a context root:

Rounding out the remainder of the year, Payara intends to implement new features such as:

Support for running Payara in Kubernetes and Docker (5.192)

Integration with public cloud providers such as AWS, Google, and Microsoft Azure

Continued support for MicroProfile and Jakarta EE:

MicroProfile 2.2 (5.192)

MicroProfile 3.0 (5.193)

Jakarta EE 8 (5.193)

New developer and administrative tooling:

Monitoring (5.193)

Full monitoring console (5.194)

Support for JDK 11 (5.192)

Performance and scalability

Payara 6

Payara Platform 6, scheduled for release in 2021, will include features such as: source code will be stripped down and built back up; fully Jakarta EE 9 certified; JDK 11+ based, that is completely compiled and built on JDK11; a new admin console plus a monitoring console; and native Spring support.

Payara 4

Payara Platform 4 will go into maintenance mode which will include JDK 8 support until 2024 through Azul and monthly stability releases.