---
title: "#jvm articles | Hashnode"
description: "Explore 191 articles tagged #jvm on Hashnode. Tutorials, guides, and how-tos from the community."
url: "https://hashnode.com/tag/jvm"
---

Tag

# #jvm

191 posts · 18 followers

[Andrii Zhukovskyi](https://hashnode.com/@zhukovskyi) · [1d ago](https://hashnode.com/posts/why-a-java-pod-gets-oomkilled-in-kubernetes-with-a-half-empty-heap/6af3351518573de2479b867a)

### [Why a Java pod gets OOMKilled in Kubernetes with a half-empty heap](https://zhukovskyi.hashnode.dev/why-a-java-pod-gets-oomkilled-in-kubernetes-with-a-half-empty-heap?utm_source=hashnode&utm_medium=feed)

In short. A container memory limit covers everything the JVM uses, and the heap is only part of it. Metaspace, thread stacks, the code cache and direct buffers live outside the heap, so a pod with -Xm

6 min read · [zhukovskyi.hashnode.dev](https://zhukovskyi.hashnode.dev/why-a-java-pod-gets-oomkilled-in-kubernetes-with-a-half-empty-heap?utm_source=hashnode&utm_medium=feed)

[BaoKhang](https://hashnode.com/@baokhang) · [3d ago](https://hashnode.com/posts/shrink-jvm-memory-kubernetes-in-place-resize/6af050df117a53bdeb34d26f)

### [Your JVMs Are Burning Money Overnight — Here's How to Shrink Them Safely in Kubernetes](https://baokhang.hashnode.dev/shrink-jvm-memory-kubernetes-in-place-resize?utm_source=hashnode&utm_medium=feed)

Java pods pay for peak memory all night. See how to shrink the JVM first, verify it, then resize the pod in place, with no restarts.

16 min read · [baokhang.hashnode.dev](https://baokhang.hashnode.dev/shrink-jvm-memory-kubernetes-in-place-resize?utm_source=hashnode&utm_medium=feed)

[BaoKhang](https://hashnode.com/@baokhang) · [3d ago](https://hashnode.com/posts/why-kubernetes-1-35-resizepolicy-restartcontainer-isn-t-required-for-zgc-shenandoah/6af0b3cf429365be92029039)

### [Why Kubernetes 1.35 resizePolicy: RestartContainer Isn't Required for ZGC/Shenandoah](https://baokhang.hashnode.dev/why-kubernetes-1-35-resizepolicy-restartcontainer-isn-t-required-for-zgc-shenandoah?utm_source=hashnode&utm_medium=feed)

A lot of current advice says to set resizePolicy: RestartContainer for memory on every JVM container. For growing the heap ceiling, that advice is right. For shrinking and regrowing within a ceiling y

10 min read · [baokhang.hashnode.dev](https://baokhang.hashnode.dev/why-kubernetes-1-35-resizepolicy-restartcontainer-isn-t-required-for-zgc-shenandoah?utm_source=hashnode&utm_medium=feed)

[BaoKhang](https://hashnode.com/@baokhang) · [3d ago](https://hashnode.com/posts/your-g1-pod-ignores-softmaxheapsize-here-s-what-works-instead/6af0c11f73b354e32d8cd296)

### [Your G1 Pod Ignores SoftMaxHeapSize. Here's What Works Instead](https://baokhang.hashnode.dev/your-g1-pod-ignores-softmaxheapsize-here-s-what-works-instead?utm_source=hashnode&utm_medium=feed)

Tested G1, ZGC and Shenandoah in a Linux container: which flag returns memory, and which one only says it did.

11 min read · [baokhang.hashnode.dev](https://baokhang.hashnode.dev/your-g1-pod-ignores-softmaxheapsize-here-s-what-works-instead?utm_source=hashnode&utm_medium=feed)

[BaoKhang](https://hashnode.com/@baokhang) · [3d ago](https://hashnode.com/posts/kubernetes-pod-resize-stuck-in-progress-jvm/6af0c696398465e528bff9ff)

### [Why Kubernetes In-Place Memory Resize Gets Stuck "In Progress" on JVM Pods](https://baokhang.hashnode.dev/kubernetes-pod-resize-stuck-in-progress-jvm?utm_source=hashnode&utm_medium=feed)

Pod resize stuck on PodResizeInProgress with "below current usage"? A JVM keeps its heap. See real kubectl output and how to unblock it.

10 min read · [baokhang.hashnode.dev](https://baokhang.hashnode.dev/kubernetes-pod-resize-stuck-in-progress-jvm?utm_source=hashnode&utm_medium=feed)

[Gowtham Muthuvel](https://hashnode.com/@GowthamMuthuvel) · [Oct 27](https://hashnode.com/posts/virtual-thread-pinning-java-25/6ae06ecd08b41add23f0fd2d)

### [Virtual Thread Pinning in Java 25: What Still Pins After JEP 491](https://gowthammuthuvel.hashnode.dev/virtual-thread-pinning-java-25?utm_source=hashnode&utm_medium=feed)

Java 24+ fixed synchronized pinning, but class initializers still pin virtual threads. A JDK 21 vs 25 test, JFR detection, and the fix.

9 min read · [gowthammuthuvel.hashnode.dev](https://gowthammuthuvel.hashnode.dev/virtual-thread-pinning-java-25?utm_source=hashnode&utm_medium=feed)

[Fekri](https://hashnode.com/@fekdaoui) · [Oct 27](https://hashnode.com/posts/spotting-new-ios-apps-in-kotlin-polling-search-results-for-fresh-release-dates-and-the-walls-you-ll-hit-2026/6ae05e9b7651a675141b3c13)

### [Spotting New iOS Apps in Kotlin: Polling Search Results for Fresh Release Dates, and the Walls You'll Hit (2026)](https://fekdaoui.hashnode.dev/spotting-new-ios-apps-in-kotlin-polling-search-results-for-fresh-release-dates-and-the-walls-you-ll-hit-2026?utm_source=hashnode&utm_medium=feed)

A dependency-free Kotlin/JVM script that flags recently launched apps in your App Store searches and remembers them between runs

12 min read · [fekdaoui.hashnode.dev](https://fekdaoui.hashnode.dev/spotting-new-ios-apps-in-kotlin-polling-search-results-for-fresh-release-dates-and-the-walls-you-ll-hit-2026?utm_source=hashnode&utm_medium=feed)

[Felipe Maschio](https://hashnode.com/@maschiojv) · [Oct 19](https://hashnode.com/posts/what-jstack-misses-when-your-java-service-uses-virtual-threads/6ad632b65bfe8c4ac01f8391)

### [What jstack Misses When Your Java Service Uses Virtual Threads](https://maschiojv.hashnode.dev/what-jstack-misses-when-your-java-service-uses-virtual-threads?utm_source=hashnode&utm_medium=feed)

Take a Spring Boot service with virtual threads enabled, a HikariCP pool of 10 connections, and roughly 5,000 requests in flight. Latency is climbing. You grab a thread dump and find 43 platform threa

8 min read · [maschiojv.hashnode.dev](https://maschiojv.hashnode.dev/what-jstack-misses-when-your-java-service-uses-virtual-threads?utm_source=hashnode&utm_medium=feed)

[Daisuke Masuda](https://hashnode.com/@x5gtrn) · [Oct 18](https://hashnode.com/posts/article-2026-19-18-1954/6ad4a5d6d556cf56ee31d7ac)

### [Java 8/11 to Java 21, 25, or 27: A Practical Migration Guide](https://daisuke.masuda.tokyo/article-2026-19-18-1954?utm_source=hashnode&utm_medium=feed)

Compatibility, performance, and a rollout you can reverse

21 min read · [daisuke.masuda.tokyo](https://daisuke.masuda.tokyo/article-2026-19-18-1954?utm_source=hashnode&utm_medium=feed)

[1](https://hashnode.com/posts/article-2026-19-18-1954/6ad4a5d6d556cf56ee31d7ac)

[Mihai\_LeanZero](https://hashnode.com/@mihaileanzero) · [Oct 3](https://hashnode.com/posts/jira-data-center-heap-size-and-jvm-tuning-for-a-cloud-migration-setenvsh-and-jcma/6ac13b7f5224e16af4390734)

### [Jira Data Center heap size and JVM tuning for a Cloud migration: setenv.sh and JCMA](https://leanzero.hashnode.dev/jira-data-center-heap-size-and-jvm-tuning-for-a-cloud-migration-setenvsh-and-jcma?utm_source=hashnode&utm_medium=feed)

Jira Data Center heap size and JVM tuning before a Cloud migration: a heap calculator from Atlassian tables and GC logs, the 32-47 GB rule, JCMA, DB pool.

49 min read · [leanzero.hashnode.dev](https://leanzero.hashnode.dev/jira-data-center-heap-size-and-jvm-tuning-for-a-cloud-migration-setenvsh-and-jcma?utm_source=hashnode&utm_medium=feed)
