Payara Platform Roadmap Update - August 2024
Originally published on 15 Aug 2024
Last updated on 26 Aug 2024
Now that we're eight months into 2024 (already!?), and in the middle of summer, it seems like a good time to catch up and update you on the Payara Roadmap for 2024 - let's see what we've done and what we are still planning to do for the rest of the year and beyond.
You can also watch the Payara Roadmap Update presented at the Virtual Payara Conference last month.
Payara's Commitment to Standards
We champion Java EE, Jakarta EE and MicroProfile—not just adhering to these standards but actively shaping them. As one of the few strategic members of the Eclipse Foundation, alongside some of the biggest names in the industry, we are at the forefront of driving these specifications and technologies forward.
Advancing standards doesn't mean rushing the process. By definition, standards encapsulate best practices, and any robust standard must evolve conservatively. It's only logical to standardize a solution in an API if it has proven its effectiveness. At Payara, we understand this principle and apply it diligently as we help steer the enterprise Java framework.
The enterprise Java standards have a rich history, dating back to 1999 when they first emerged. Since then, they evolved significantly, with major updates being released approximately every two years. In 2006, Java EE transitioned from its original name, J2EE, and later, it was rebranded as Jakarta EE when Oracle donated it to the Eclipse Foundation. This move marked a significant shift, making everything open source, fostering greater innovation and collaboration.
By being part of this ecosystem, Payara stands alongside industry giants, contributing to the enduring legacy and future evolution of enterprise Java standards.
Kickstarting Your Journey: Payara Starter
At Payara, we're constantly innovating to make your enterprise development journey smoother. One of our most exciting recent updates is the release of our starter tool, which went live in January. If you’re unsure where to begin with the Payara Platform, the starter is your perfect launchpad. Simply head over to start.payara.fish, and you'll be greeted with a user-friendly web UI designed to help you set up your project effortlessly.
The starter tool allows you to customize your runtime environment according to your budget and preferences. Whether you need a micro runtime or a full server setup, you can select your preferred API versions to align with your enterprise standards or personal choices. You can also choose your JDK versions. With just a click on the generate button, you'll receive a ready-to-use project scaffold that compiles smoothly and serves as a solid foundation for your development endeavors.
For seasoned experts in Jakarta EE and Payara, this tool might seem straightforward, but for newcomers—especially younger developers well-versed in Java but new to enterprise APIs—it’s a game-changer. Many recent graduates or developers with a few years of experience can find enterprise APIs quite specific and challenging. The starter provides that essential initial push to get your first application up and running. It simplifies the process with generated code that includes proper annotations, structure, testing setup, Docker support, MicroProfile support, Jakarta EE support and basic security login mechanisms. It's essentially a sample of all the critical cross-cutting concerns, making it the perfect starting point for anyone diving into Payara and Jakarta EE.
We believe wholeheartedly in the starter tool and are committed to expanding its functionality in the future. While it's too early to reveal specific plans, rest assured that we have many exciting ideas in the pipeline to enhance this tool further.
In January, we also responded to client and community requests by developing and distributing ARM64-specific images for our platform. These images are particularly beneficial for developers working on Macs and for those using ARM-based servers, which are becoming increasingly popular in cloud environments. Supporting the ARM64 architecture as a first-class player is crucial, and we're proud to offer this capability.
Stay tuned for more updates as we continue to improve and expand our tools to support your development needs. Start your journey with us at start.payara.fish.
Introducing Dev Mode: A Game-Changer for Developers
In February, we proudly introduced a feature that many of you have been eagerly anticipating: Dev Mode. This enhancement represents a significant milestone, and it's designed to make your development process smoother and more efficient.
As developers, we juggle numerous variables and APIs in our minds. The traditional development workflow, which often involves lengthy deployment times and complex build processes, can disrupt our creative flow. Waiting for your app to deploy just to see the results of your latest changes is frustrating. Dev Mode addresses this issue head-on, ensuring you can stay in the zone without unnecessary interruptions.
Find out more about Payara Dev Mode
How Dev Mode Enhances Productivity
Dev Mode in Payara, especially when combined with other products, streamlines the development process. With this feature, you simply save your changes in your IDE by hitting Control+S, and the changes are deployed almost instantly. This minimal delay means you can see the impact of your changes immediately, keeping you productive and focused.
One of the standout features of our Dev Mode is the auto browser refresh function. If you're developing a web UI using JavaServer Faces or a similar technology, you’ll love this. As soon as you save your changes, the browser refreshes automatically, displaying the new content without you needing to hit F5. Imagine adding a new table to your UI and seeing it rendered instantly. This seamless feedback loop is all about maximizing developer productivity.
Why Dev Mode Matters
Dev Mode isn't just a minor improvement, it's a vital tool for modern developers. By minimizing the time between writing code and seeing the results, it helps maintain momentum and focus, ultimately leading to faster development cycles and more innovative solutions. It's a feature that recognizes the importance of keeping developers in the flow, reducing frustration and enhancing overall efficiency.
Looking Ahead
We're thrilled with the positive feedback we've received on Dev Mode so far and are committed to continuing to enhance our tools to support your development needs. Stay tuned for more updates as we strive to make your development experience as seamless and productive as possible.
Enhancing Your Development with Upgrade Advisor and Amazon SQS Connector
Upgrade Advisor: Smooth Transition from Jakarta 8 to Jakarta 10
One of the significant updates in March was the enhancement of our Upgrade Advisor tool. This vital tool assists you in migrating your applications from Jakarta 8 to Jakarta 10. With Jakarta 10 introducing major updates and breaking changes, such as deprecated methods and improved alternatives, ii can be challenging to keep your applications up-to-date.
The Upgrade Advisor helps navigate these changes by analyzing your code and providing tailored recommendations. We've updated the advisor to include MicroProfile 6.1 and the latest versions, ensuring comprehensive guidance. It compares your code with the new specifications, suggesting improvements for classes and methods to align with Jakarta 10 standards.
Amazon SQS Connector: Responding to Client Needs
In March, we also rolled out updates to the Amazon SQS Connector. This enhancement was driven by a request from one of our major clients. At Payara, we prioritize our clients' needs and continuously adapt our roadmap to meet them. Recognizing the importance of this feature, we allocated the necessary resources to implement these updates, ensuring our platform remains robust and versatile.
Partnering for Progress
These updates on our offering at Payara highlight our commitment to collaboration and innovation. By listening to our clients and responding to their feedback, we strengthen our platform and support your development needs. The improvements to the Budget Advisor and the Amazon SQS Connector are prime examples of how we, as your partners, actively shape our roadmap to enhance your experience.
Stay tuned for more updates as we continue to evolve and adapt our tools to meet the ever-changing demands of the development world.
Introducing Payara 7 Alpha
In April, we released the first version of our new major version, Payara Platform 7. This alpha release is particularly exciting as it supports Jakarta EE 11, despite the 11 spec not being finalized yet. Our eagerness to implement this version was driven by a focus on the concurrency API, which leverages the virtual threads introduced in Java 21. This addition marks a significant advancement for the JVM and the Java platform, promising numerous benefits. Concurrency and the virtual thread feature were our primary focus as we embarked on the Payara 7 journey. You can download the alpha version now, and stay tuned for updates on subsequent alpha releases.
Introducing the Powerful Diagnostics Tool
In May, we unveiled an invaluable internal tool designed to aid operations: the diagnostics tool. This tool simplifies the process of gathering a comprehensive snapshot of your system with just a click or a simple command. Whether you're managing tens or hundreds of servers within a cluster, each with unique configurations, logs and JVMs, this tool consolidates all the crucial information—thread dumps, heap dumps and more—into a neatly structured zip file. This makes troubleshooting and system analysis significantly more efficient. By running a single command, operators can quickly obtain all the necessary data, making the diagnostics tool an essential addition to their toolkit.
Expanding Payara Cloud Support and Introducing Customer-Managed Regions
In June, our focus was on expanding and enhancing Payara Cloud. To ensure consistency across our tools, we now support Payara Cloud in the Payara Starter, Maven and various instructional videos, with plans to extend this support to all popular IDEs. This means that building and deploying a microservice server with Maven is now almost as seamless in the cloud as it is locally. Once the artifact, such as a WAR file, is built, Payara’s infrastructure uploads it to the cloud. Instead of running your app on localhost:8080, you access it directly in the cloud, with changes deployed and running almost instantaneously. It's a magical experience that streamlines development and deployment.
Additionally, we introduced an important feature called customer-managed regions. Our native Kubernetes solution now allows you to connect with other services you control, such as additional Azure regions where you might run databases. This integration minimizes latency and enhances performance. While Payara Cloud is theoretically infrastructure-agnostic as a platform as a service, in practice, attaching your own cloud regions to your project can be highly beneficial for reducing latency.
Stay tuned for more updates on Payara Cloud and its evolving capabilities.
Coming up in Q3 2024- Jakarta 11: Key Updates and What to Expect
It's time to delve into Jakarta 11, which is currently in a promising stage of development, with our Payara 7 Alpha already building on it. Within the Eclipse Foundation, significant progress has been made. DevOps teams are now voting, and members have agreed on the final image of the platform at the API level. However, there are still logistical steps to be completed before Jakarta 11 is officially released by the Eclipse Foundation.
Jakarta 11 represents a major update to the Jakarta platform, as highlighted by numerous API updates. Transitioning an API from one version to another is a complex process that involves gaining consensus, updating test compatibility kits, rewriting documentation and adhering to strict specifications. This meticulous process ensures that every change is well-considered and useful across many use cases, maintaining backward compatibility and ensuring long-term viability.
One of the standout features of Jakarta 11 is the introduction of a completely new specification: Jakarta Data, similar to Spring Data. This addition aims to keep the Jakarta platform up-to-date in a controlled and systematic manner. Our Payara 7 Alpha 2 will incorporate many of these new APIs, with a release planned for Q3.
The release process is organized into waves to ensure logical dependency management between specs. This methodical approach prevents wrong dependencies, making sure the dependency tree is coherent. As we progress through these stages, each wave is carefully timed to maintain order and consistency.
Jakarta 11 is an exciting step forward, bringing innovative updates to the Jakarta platform while maintaining the reliability and backward compatibility that users expect. Stay tuned for the upcoming releases and further developments as we continue to enhance the Jakarta ecosystem.
Q4 2024- Payara 7 Alpha 3 and Performance Enhancements
As we move towards the final stages of 2024, Payara 7 Alpha 3 will bring us closer to our goal, with the Payara 7 Community Final expected to be fully Jakarta 11 compliant. We're closely monitoring the Eclipse Foundation's release timeline, which is anticipated around September-October, and we plan to align our release of Payara 7 Community Final as soon as possible.
In the final quarter of the year, we're placing a strong emphasis on performance improvements, particularly with Payara Micro. Designed with container and microservices environments in mind, Payara Micro has been updated to incorporate new standards, including Jakarta MicroProfile. As microservices and containerization become increasingly integral to modern applications, optimizing performance—especially startup time and memory footprint—becomes crucial. Faster startup times are essential for scale-to-zero environments where containers need to be frequently restarted. Additionally, reducing memory footprint helps manage cloud costs effectively.
Our focus on performance doesn't end here. We've also partnered with Restore at the Checkpoint, a technology that enables faster JVM startup by saving and reloading snapshots. This approach can significantly enhance startup times, though it comes with considerations such as rebuilding network connections and re-establishing database links. Despite these challenges, checkpoint restoration will be a key component of our performance strategy moving forward.
With these advancements, we aim to meet the evolving needs of our customers and the broader community as we reach the end 2024.
Looking Ahead: Payara 7 Enterprise and Future Innovations
As we look towards 2025 and beyond, the next major milestone is the launch of Payara 7 Enterprise. Our approach involves first integrating the new standards into the community edition before rolling them out to the enterprise version. Early 2025 will see a strong focus on Payara 7 Enterprise and the accompanying tools. One key addition will be a new advisor designed to facilitate the transition from Jakarta 10 to Jakarta 11.
Cloud support will continue to expand across all major IDEs, including Visual Studio Code, IntelliJ, NetBeans and Eclipse. We’re also revamping the admin console to integrate various functionalities—currently split between the server graphical interface and a separate monitoring tool—into a unified, user-friendly experience. This overhaul will utilize new technologies to enhance UI/UX and ease of maintenance.
In terms of observability, we’re undertaking a comprehensive review and enhancement. While our platform already supports essential observability features such as notifiers and health checks, we aim to improve these mechanisms. This will involve refining how our system monitors and alerts on various metrics like memory usage, CPU load, threads and connection pools, ensuring that administrators and developers receive timely and actionable insights.
As we approach our ten-year anniversary, Payara remains committed to advancing enterprise Java, addressing cross-cutting concerns as well as delivering solutions that are both innovative and reliable. Our mission is to delight developers and provide peace of mind to our customers.
Watch the full Payara 2024 Roadmap Update presentation here
Related Posts
Virtual Payara Conference is this week! See the Agenda Highlights
Published on 09 Dec 2024
by Dominika Tasarz
0 Comments
Virtual Payara Conference - find out more and register here - is a two-day, free event that brings together industry leaders, developers, and innovators to explore the latest advancements and strategic insights in the world of Java and Jakarta ...
Testing Jakarta EE Applications: Best Practices and Tools
Published on 05 Dec 2024
by Luqman Saeed
0 Comments