Nebraska.Code() Sessions tagged java

The Next Frontier in Open Source Java Compilers: Just-In-Time Compilation as a Service

For Java developers, the Just-In-Time (JIT) compiler is key to improved performance. However, in a container world, the performance gains are often negated due to CPU and memory consumption constraints. To help solve this issue, the Eclipse OpenJ9 JVM provides JITServer technology, which separates the JIT compiler from the application.

JITServer allows the user to employ much smaller containers enabling a higher density of applications, resulting in cost savings for end-users and/or cloud providers. Because the CPU and memory surges due to JIT compilation are eliminated, the user has a much easier task of provisioning resources for his/her application. Additional advantages include: faster ramp-up time, better control over resources devoted to compilation, increased reliability (JIT compiler bugs no longer crash the application) and amortization of compilation costs across many application instances.

We will dig into JITServer technology, showing the challenges of implementation, detailing its strengths and weaknesses and illustrating its performance characteristics. For the cloud audience we will show how it can be deployed in containers, demonstrate its advantages compared to a traditional JIT compilation technique and offer practical recommendations about when to use this technology.

Speaker

Rich Hagarty

Rich Hagarty

Developer Advocate, IBM

To InstantOn and Beyond: Java at Lightspeed!

Imagine a Java application that can start up in milliseconds, without compromising on throughput, memory, development-production parity or Java language features. Sounds out of this world, right? Well, through the use of technologies like CRIU support in Eclipse OpenJ9 and Liberty's InstantOn, we've taken one giant leap forwards for innovation within Java, offering exactly this! Join this session to learn more about these innovations and how you could utilise OSS technologies to deliver highly scalable and performant applications that are optimized for today's cloud-native environments.

Speaker

Rich Hagarty

Rich Hagarty

Developer Advocate, IBM

Bootify.io: A Quick way to start a new spring boot application with best practices

It's one thing to read about spring boot, spring data JPA and other technology. It's even better to generate a short, self-contained, correct ready-to-run example quickly. Thomas Surmann's Bootify.io web application is fabulous for learning or starting a new application.

Come learn about the SaaS web application Bootify.io, the "Best developer experience for starting Spring Boot apps ‐ best practices included."

We'll discuss and work through the following (bring your laptop if you'd like to play along):

  1. A tour of the free tier of great SaaS that is Bootify.io
    1. Generating many to many relationships with JPA (spring data)
    2. h2Database.com - Quick & easy all Java Database with an easy-to-use web console
      1. Then we'll swap h2 out for PostgreSQL.
    3. API generation with swagger (OpenAPI) using Bootify
    4. Thymeleaf GUI that sits alongside the APIs
    5. HTMX.org is an excellent (language-neutral) way to mix AJAX into your application for single-page app-like interactivity.
  2. We'll do all the mvn install work in the cloud -- no heavy downloads on wifi. How? We'll demo two cloud development environments.
  3. See how quick & easy it is to use GitPOD.io's free tier. GitPOD.io is a cloud development environment that makes it easy to explore a GitHub repository.
  4. See how quick & easy GitHub's Codespaces are to use. Currently, GitHub gives away "up to 60 hours a month free" of Codespaces to each user.

We'll use the sample repo https://github.com/payne/team2 that was created in minutes using Bootify.io.

The short link for this presentation is MattPayne.org/bootify.

Speaker

Matt Payne

Matt Payne

software engineer