Speaker Details

Dmitry Chuyko
Dmitry Chuyko is a Senior Performance Engineer at BellSoft, an OpenJDK committer, and a public speaker. Prior to joining BellSoft, Dmitry worked on the Hotpot JVM at Oracle, and before that he had many years of programming experience in Java. He is currently focused on optimizing HotSpot for x86 and ARM, previously being involved in rolling out JEP 386, which enables the creation of the smallest JDK containers.  
Over the past few years, the world has welcomed many new Arm cores and ISA versions. A few generations of CPUs are now widely used in various public clouds. Several generations of powerful desktop computers appeared, including the new Macs. The AArch64 port was integrated into JDK 9 and received multiple optimizations in JDK 11. Even more enhancements were introduced in newer versions. Windows and macOS have joined Linux on the list of supported operating systems with native Arm port. In addition, Linux can now be built on musl. Virtualization and container tools such as Docker and Kubernetes also run on Arm servers and desktops.
However, developers still run into quirks when working on Arm-based machines or targeting them for deployment. It’s time to update the guidebook on current equipment and its capabilities. The latest Java test scores reflect the advances in software and hardware, which are rapidly pacing forward.
K8s helps enterprises with complex deployments and rapid scaling. But developers often solve only a part of the problem, i.e., withstanding a certain load. Hence, “default” containers behave unexpectedly leading to resource misuse, degradation, and huge cloud bills.
To remedy the situation, developers are to be involved in cost optimization with KPIs agreed with the business. From a technical standpoint, this means determining metrics, building efficient containers, and conducting performance tests.
Containers affect service behavior, and microcontainers and native images help streamline the deployment. Application images can be built in different ways, after which you need to measure performance and utilization.
By having clear goals and optimizations in place during application delivery, you can reduce costs and make production safer.