# Java and java performance optimization * [reddit.com/r/java](https://www.reddit.com/r/java) * [Dzone refcard: Java Peformance Optimization](https://dzone.com/refcardz/java-performance-optimization) * [jenkins.io - Tuning Jenkins GC For Responsiveness and Stability with Large Instances 🌟](https://jenkins.io/blog/2016/11/21/gc-tuning/) * [blog.openshift.com: Scaling Java Containers 🌟🌟](https://blog.openshift.com/scaling-java-containers/) * [blog.openshift.com: Performance Metrics (APM) for Spring Boot Microservices on OpenShift](https://blog.openshift.com/performance-metrics-apm-spring-boot-microservices-openshift/) * [dzone.com: Java RAM Usage in Containers: Top 5 Tips for Not Losing Your Memory](https://dzone.com/articles/java-ram-usage-in-containers-top-5-tips-not-to-los) * [dzone.com: Running a JVM in a Container Without Getting Killed:](https://dzone.com/articles/running-a-jvm-in-a-container-without-getting-kille) Starting in JDK 9, and earlier if you use JDK 8u131, your JVM can detect how much memory is available when running inside a Docker container. * [dzone.com: Java Inside Docker: What You Must Know to Not FAIL](https://dzone.com/articles/java-inside-docker-what-you-must-know-to-not-fail) If you've tried Java in containers, particularly Docker, you might have encountered some problems with the JVM and heap size. Here's how to fix it. * [medium.com/@javachampions : Java is still free](https://itnext.io/java-is-still-free-c02aef8c9e04) * [Oracle Java 11 and OpenJDK](https://blog.joda.org/2018/09/do-not-fall-into-oracles-java-11-trap.html) * [developers.redhat.com: The future of Java and OpenJDK updates without Oracle support](https://developers.redhat.com/blog/2018/09/24/the-future-of-java-and-openjdk-updates-without-oracle-support/) * [redhat.com: The history and future of OpenJDK](https://www.redhat.com/en/blog/history-and-future-openjdk) * List of Performance Analysis Tools: * [en.wikipedia.org/wiki/List_of_performance_analysis_tools](https://en.wikipedia.org/wiki/List_of_performance_analysis_tools) * [InspectIT](https://en.wikipedia.org/wiki/InspectIT) * [VisualVM](https://en.wikipedia.org/wiki/VisualVM) * [OverOps](https://en.wikipedia.org/wiki/OverOps) * [FusionReactor](https://en.wikipedia.org/wiki/FusionReactor) * etc * Threadumps + heapdumps + GC analysis tools: * [tier1app.com](https://tier1app.com/) * [fastthread.io](https://fastthread.io/) * [gceasy.io](https://gceasy.io/) * [heaphero.io](https://heaphero.io/) * [javarevisited.blogspot.com: The 2020 Java Developer RoadMap 🌟🌟](https://javarevisited.blogspot.com/2019/10/the-java-developer-roadmap.html) ## Debugging java applications on openshift and kubernetes * [blog.openshift.com: Debugging Java Applications On OpenShift and Kubernetes](https://blog.openshift.com/debugging-java-applications-on-openshift-kubernetes/)