Relationship verification… Let’s get lazy!

It’s complicated… Relationship verification is very important, but can we be a little lazy about it? Java bytecode verification entails several processes, one of which is class relationship verification. Java Virtual Machine (JVM) startup includes any JVM or application setup preceding the actual execution of the program, and one of these steps is verification. Consequently,…

Running Payara Micro on OpenJ9

In the cloud environment, you need to bring up your microservices applications quickly and frequently in respond to user demands. Therefore, having a JVM that starts up faster is important. Eclipse OpenJ9 is a JVM that has a fast start-up performance and a low memory footprint. This post outlines how to improve the start-up performance…

Categoriesvm

OpenJ9 class sharing is enabled by default

Class sharing is a feature in Eclipse OpenJ9 that improves your application’s startup performance. It also reduces the memory footprint if the same cache shared across multiple JVMs. Traditionally, this feature is turned on by explicitly specifying option -Xshareclasses in the command line. Default Class Sharing Class data sharing is enabled by default for bootstrap…

Categoriesvm

Debugging Java Applications using Watched Fields

Debugging can be quite tedious, complex and cumbersome. Detailed within this blog we will explore how to make Java debugging a bit easier by leveraging the JVM’s embedded debugging tools. Native C/C++ debuggers utilize operating system hooks to debug an application. The Java Virtual Machine (JVM) includes it’s own unique and powerful toolkit for debugging;…

Working With VM Arguments as a Co-op Student

Stereotypically, interns are known to receive the short end of the stick. Whether it’s cleaning up scrappy (and usually unimportant) parts of a project, or doing boring brain-dead tasks that the full-time members are too busy to do, the work that we interns tend to receive is usually viewed as miscellaneous housework. Two weeks into…

Categoriesvm