Virtual threads are coming to Java 19 |
|
June 2022 |
Plus: VirtIO, SCSI passthrough, security scanning, and Oracle Cloud Infrastructure command-line interface |
|
|
|
|
Coming to Java 19: Virtual threads and platform threads. As Nicolai Parlog explains, operating systems can’t increase the efficiency of platform threads, but the JDK can make better use of them by severing the one-to-one relationship between its threads and OS threads.
A virtual thread is an instance of java.lang.Thread that requires an OS thread to do CPU work—but doesn’t hold the OS thread while waiting for other resources. When code running in a virtual thread calls a blocking I/O operation in the JDK API, the runtime performs a nonblocking OS call and automatically suspends the virtual thread until the operation finishes, Nicolai explains. Therefore, during that time, other virtual threads can perform calculations on that OS thread, so they’re effectively sharing it.
The best news: Just as programs barely ever care about virtual versus physical memory, rarely does concurrent Java code have to care whether it runs in a virtual thread or a platform thread. Therefore, you can focus on writing straightforward, potentially blocking code—the runtime takes care of sharing the available OS threads to reduce the cost of blocking to near zero.
Read all about it in Nicolai’s article.
Send your feedback on this newsletter to me at alan.zeichick@oracle.com.
Take care, Alan Zeichick Editor at Large @zeichick |
|
Technical articles |
VirtIO, or virtual input/output, is an abstraction layer over a host’s devices for virtual machines. Essentially, it’s an interface that allows a virtual machine to use its host’s devices via minimized virtual devices called VirtIO devices. These VirtIO devices are minimal because they’re implemented with only the bare necessities to be able to send and receive data. The host handles most of the setup, maintenance, and processing on its actual physical hardware devices. This technical article explains the details of what VirtIO is and why you should use it.
Do you know about pstore, the Linux kernel persistent storage file system? Linux provides this persistent storage file system, which can store error records when the kernel dies (or reboots or powers off). These records in turn can be referenced to debug kernel problems (currently the kernel stuffs the tail of the dmesg, which also contains a stack backtrace, into pstore). The pstore file system is backed by local nonvolatile memory and presented to the running system via traditional file system interfaces. Since it uses local nonvolatile memory, pstore works even when kdump cannot. Read how Oracle is improving the usability of pstore on Linux systems.
Project Leyden, a newly launched OpenJDK project, plans to address Java’s slow startup time and slow time to peak performance. As described by Mark Reinhold, chief architect of the Java Platform Group at Oracle, Project Leyden will address these pain points by introducing static runtime images to the Java platform. See how the project is getting started.
A key concept in security is “defense in depth,” where multiple controls must be performed in sequence to guarantee the confidentiality, integrity, and availability of sensitive assets. Java Card products and associated security services are examples of such assets. The deployment of Java Card applications relies on an established ecosystem of hundreds of companies and organizations, organized around security practices that guarantee this defense in depth. Learn how it works.
Java Management Service (JMS) has come a long way since its launch in June 2021. JMS is a cloud service running on Oracle Cloud Infrastructure (OCI) that helps Java users manage, monitor, and maintain their Java environments. It enables the use of OCI to observe and manage Java in the enterprise—on OCI, on-premises, or on other clouds. See how the latest release, JMS 4.0, delivers insights to help optimize workloads across the enterprise (desktop, server, cloud).
The SCSI passthrough over multipath is very commonly used in virtualization environments, but developers may require a solution that allows them to quickly and efficiently set up an environment to diagnose and observe the behavior of how a path error is propagated to the virtual machine. This article demonstrates how to set up a software-only KVM environment on a regular OCI virtual machine, without any special SCSI or storage hardware requirements.
You can build a blogging solution with Oracle Content Management. Not only does blogging drive website traffic and promote your products and services, but it also helps you build trust with your potential customers. This article shows how you can use Oracle Content Management to create a blog website, enable your authors to create high-quality content regularly, and publish that content so your audience can find and engage with it. |
|
Product announcements |
Oracle has announced the general availability of security scanning for package vulnerabilities in OCI DevOps service’s build pipeline in conjunction with the new Oracle Application Dependency Management Cloud Service. The new vulnerability audit feature enables you to scan for common vulnerabilities and exposures (CVEs) as part of your continuous integration (CI) pipelines.
To integrate OCI with third-party code repositories such as GitHub and GitLab, you must create a personal access token (PAT) in GitHub or GitLab and store the PAT in an OCI vault. Each service in OCI integrates with OCI Identity and Access Management for authentication and authorization. Learn how to create a connection to external repositories such as GitHub, GitLab, and Bitbucket Cloud in this technical document.
You can now deploy Helm charts to Kubernetes clusters running on OCI Container Engine for Kubernetes (OKE). This new feature of the OCI DevOps service enables developers to easily create continuous integration and delivery (CI/CD) pipelines that include Helm chart package deployments to their OKE clusters. Read the blog for details.
The latest release of the OCI command-line interface (CLI) now includes an interactive mode. This mode simplifies your OCI CLI user experience through several new features, including command and parameter suggestions, autocompletion, and command reference information. Interactive mode makes it easy learn the OCI CLI quickly.
Oracle now offers JDK 18 for developers, end users, and enterprises. JDK 18 will receive performance, stability, and security updates for six months, following the Oracle Critical Patch Update schedule outlined in the Oracle Java SE Support Roadmap. Read all about it!
Oracle Linux 8 Update 6 for the 64-bit Intel, 64-bit AMD (x86_64), and 64-bit Arm (AArch64) platforms is now available. This release includes the Unbreakable Enterprise Kernel (UEK) Release 6 Update 3 on the installation image, along with the Red Hat Compatible Kernel (RHCK) for the x86_64 platform. This update also introduces support for drop-in configuration files to OpenSSH servers and policy-based decryption (PBD) for automated unlocking of LUKS-encrypted drives, and it delivers many enhancements. Read this blog for details. |
|
Upcoming developer webcasts |
With Pulumi’s new Oracle Cloud integration you can now define, deploy, and manage OCI resources using your favorite programming languages including JavaScript, TypeScript, Python, C#, and Golang. Get started with Infrastructure as Code on OCI. July 14, 2022
Oracle is announcing the new OCI Digital Media Service, which prepares video content for streaming through OCI (or through a content delivery network). It also offers media processing, playback, large-scale delivery, streaming, and analytics. These features integrate with other OCI services such as OCI Object Storage and the OCI AI Services for AI-based video search and analysis. This webcast introduces these new video streaming and analytics services from Oracle. July 27, 2022 |
|
New guides |
These new guides from the Micronaut team are tailored for Java, Kotlin, and Groovy developers, and they have instructions for both Maven and Gradle.
|
|
Oracle customers and partners from around the world will come to Las Vegas October 17 to 20 to share insights about Oracle Cloud Infrastructure and applications at the new Oracle CloudWorld conference. Sign up for the latest about registration and speakers. |
|
|
Get a new Developer newsletter delivered to your inbox every month |
|
|
|
|