October 4, 2022 By Rich Hagarty 4 min read

A new feature within Liberty called InstantOn helps avoid the disadvantages and limitations that come with native image compilation.

A massive shift to the cloud has caused organizations to face rising infrastructure costs to deploy and manage their applications. Many are turning to cloud-native technologies that offer advantages over traditional IT solutions. These technologies empower organizations to build and run scalable applications in modern, dynamic environments like public, private and hybrid clouds. Cloud-native also provides additional agility, enabling applications to be rapidly deployed, scaled, and optimized for any cloud environment.

Cloud-native solutions include IaaS (infrastructure-as-a-service), PaaS (platform), SaaS (software) and serverless computing. Each offers varying levels of support and responsibility between the cloud provider and users of the service. 

Leading the charge is serverless computing, which takes on the responsibility of managing the infrastructure — freeing up developers to focus their time on building applications. Besides helping make developers more productive, it has another big benefit: cost. Applications deployed in a serverless environment are automatically scaled up and down based on demand and charged accordingly. This pay-as-you-go model means you only pay for what you use (which, in some cases, can be zero when your application is idle).

Are your applications ready for serverless?

To effectively scale dynamically —especially from zero instances — your application should be responsive to requests instantly, typically measured in milliseconds. While quick start-up time can be an issue for applications of any size or type, it is especially challenging for Java workloads. This is because, traditionally, a lot of work is done by the JVM during start-up. 

One popular way to improve start-up times for Java workloads is to use a static compiler to build your application into a native image. While this does improve start-up time, there are disadvantages to this approach. The first is that you lose all the benefits of running in a traditional Java application runtime, including memory and performance optimizations. Another is that static native-image compiling solutions may not support the full set of Java features, so you will have to modify your code to work around this limitation.

Perhaps the biggest issue is that the compile-to-native approach introduces additional steps to the development and deployment process. Since the time to compile and build a native image can be significant, developers typically choose to do development and testing in a traditional Java runtime. This difference between development and production environments runs counter to best practices for cloud-native application development and adds the risk that problems will be discovered late in the delivery cycle.

Liberty InstantOn, without compromise

InstantOn, a new feature within IBM WebSphere Liberty, is a better solution that avoids the disadvantages and limitations that come with native image compilation. 

InstantOn allows the Liberty runtime to start up cloud-native Java applications incredibly fast. As shown in the graph below, applications typically start 10 times faster than without InstantOn. Designed for cloud and container environments, Liberty provides developer tools to help increase your productivity by 50%, adheres to open standards (like Jakarta EE and MicroProfile) to help avoid vendor lock-in and offers world-leading performance to help you potentially reduce IT infrastructure costs by 40%.

How does InstantOn produce such fast start-up times? It does this by taking a snapshot of a running Java runtime and then restoring it from the point the snapshot was taken. The beauty of this is all the work done before the snapshot is taken does not have to be repeated; if you started a Liberty runtime and deployed an application before the snapshot, that is all ready to go when the Java process is restored.  When restored, your application will continue to have the same high throughput and low memory performance characteristics as a Liberty runtime without InstantOn. And if you are concerned about the effort involved in creating the snapshot, it can be accomplished with a simple command that completes in a matter of milliseconds.

Summary

New cloud-native technologies allow applications to dynamically scale, reducing the need to pay for over-provisioned resources so that operational costs can be optimized. To maintain the best possible service to end users, applications need to rapidly scale up (especially from zero instances) when demand load increases. But quick start-up times can be an issue for many Java workloads. One possible approach is to compile your code to native images, but this introduces limitations and drawbacks that need to be addressed.

InstantOn with Liberty offers a better solution, without any compromises. It enables you to take full advantage of cloud infrastructure with fast and dynamic start-up by doing the following:

  • Enabling your application to continue to run in traditional Java runtimes, optimized to deliver high throughput and low memory usage
  • Ensuring you always have full Java language support
  • Ensuring your development, testing and production environments remain as similar as possible, removing the need to modify your application workflow and lifecycle

This all seamlessly helps to ensure that your cloud-native Java application is automatically optimized and ready to thrive in the ever-changing world of cloud computing.

Watch the video to learn more:

More from Announcements

Success and recognition of IBM offerings in G2 Summer Reports  

2 min read - IBM offerings were featured in over 1,365 unique G2 reports, earning over 230 Leader badges across various categories.   This recognition is important to showcase our leading products and also to provide the unbiased validation our buyers seek. According to the 2024 G2 Software Buyer Behavior Report, “When researching software, buyers are most likely to trust information from people with similar roles and challenges, and they value transparency above other factors.”  With over 90 million visitors each year and hosting more than 2.6…

Manage the routing of your observability log and event data 

4 min read - Comprehensive environments include many sources of observable data to be aggregated and then analyzed for infrastructure and app performance management. Connecting and aggregating the data sources to observability tools need to be flexible. Some use cases might require all data to be aggregated into one common location while others have narrowed scope. Optimizing where observability data is processed enables businesses to maximize insights while managing to cost, compliance and data residency objectives.  As announced on 29 March 2024, IBM Cloud® released its next-gen observability…

Unify and share data across Netezza and watsonx.data for new generative AI applications

3 min read - In today's data and AI-driven world, organizations are generating vast amounts of data from various sources. The ability to extract value from AI initiatives relies heavily on the availability and quality of an enterprise's underlying data. In order to unlock the full potential of data for AI, organizations must be able to effectively navigate their complex IT landscapes across the hybrid cloud.   At this year’s IBM Think conference in Boston, we announced the new capabilities of IBM watsonx.data, an open…

IBM Newsletters

Get our newsletters and topic updates that deliver the latest thought leadership and insights on emerging trends.
Subscribe now More newsletters