<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>GraalVM on PlumePHP</title><link>https://plumephp.com/tags/graalvm/</link><description>Recent content in GraalVM on PlumePHP</description><generator>Hugo</generator><language>zh-CN</language><lastBuildDate>Tue, 01 Sep 2026 10:00:00 +0800</lastBuildDate><atom:link href="https://plumephp.com/tags/graalvm/index.xml" rel="self" type="application/rss+xml"/><item><title>Java 性能优化实战：从 JIT/AOT 到 GraalVM 原生镜像</title><link>https://plumephp.com/java-performance-optimization/</link><pubDate>Tue, 01 Sep 2026 10:00:00 +0800</pubDate><guid>https://plumephp.com/java-performance-optimization/</guid><description>&lt;p&gt;在现代企业级应用与云原生架构中，Java 性能直接决定系统吞吐量、响应延迟和基础设施成本。从 JVM 的 JIT 即时编译，到 JDK 9 的 AOT 静态编译，再到 GraalVM 原生镜像的毫秒级启动，Java 性能优化领域经历了深刻变革。本文从 JVM 编译器底层出发，系统讲解 JIT/AOT 技术差异、GraalVM 原生镜像构建与配置、Spring Boot 3 原生编译支持、性能剖析工具链、JVM 启动与运行时优化，以及字符串、集合、IO 等高频优化点。&lt;/p&gt;</description></item><item><title>JVM 多语言生态：Kotlin、Scala、Graal 与 Clojure 深度对比</title><link>https://plumephp.com/java-multilingual-jvm/</link><pubDate>Tue, 01 Sep 2026 10:00:00 +0800</pubDate><guid>https://plumephp.com/java-multilingual-jvm/</guid><description>&lt;h2 id="目录"&gt;目录&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href="#1-jvm-%E4%BD%9C%E4%B8%BA%E8%AF%AD%E8%A8%80%E5%B9%B3%E5%8F%B0%E5%AD%97%E8%8A%82%E7%A0%81%E4%B9%8B%E4%B8%8A%E7%9A%84%E7%BC%96%E7%A8%8B%E4%B8%96%E7%95%8C"&gt;JVM 作为语言平台：字节码之上的编程世界&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#2-kotlin%E4%B8%8E-java-%E6%97%A0%E7%BC%9D%E4%BA%92%E6%93%8D%E4%BD%9C%E7%9A%84%E7%8E%B0%E4%BB%A3%E8%AF%AD%E8%A8%80"&gt;Kotlin：与 Java 无缝互操作的现代语言&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#3-scala%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1%E4%B8%8E%E5%87%BD%E6%95%B0%E5%BC%8F%E7%BC%96%E7%A8%8B%E7%9A%84%E7%86%94%E7%82%89"&gt;Scala：面向对象与函数式编程的熔炉&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#4-clojurelisp-%E7%B2%BE%E7%A5%9E%E5%9C%A8-jvm-%E4%B8%8A%E7%9A%84%E7%BB%BD%E6%94%BE"&gt;Clojure：Lisp 精神在 JVM 上的绽放&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#5-groovy%E5%8A%A8%E6%80%81%E8%84%9A%E6%9C%AC%E4%B8%8E%E5%B7%A5%E7%A8%8B%E6%95%88%E7%8E%87%E7%9A%84%E5%B9%B3%E8%A1%A1"&gt;Groovy：动态脚本与工程效率的平衡&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#6-graalvm-polyglot%E6%89%93%E7%A0%B4%E8%AF%AD%E8%A8%80%E8%BE%B9%E7%95%8C%E7%9A%84%E8%BF%90%E8%A1%8C%E6%97%B6"&gt;GraalVM Polyglot：打破语言边界的运行时&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#7-%E8%AF%AD%E8%A8%80%E9%80%89%E5%9E%8B%E5%85%A8%E7%BB%B4%E5%BA%A6%E5%AF%B9%E6%AF%94"&gt;语言选型全维度对比&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#8-%E6%B7%B7%E5%90%88%E9%A1%B9%E7%9B%AE%E5%AE%9E%E6%88%98java--kotlin-gradle-%E5%B7%A5%E7%A8%8B"&gt;混合项目实战：Java + Kotlin Gradle 工程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#9-%E6%80%A7%E8%83%BD%E5%9F%BA%E5%87%86%E6%B5%8B%E8%AF%95%E8%A7%A3%E8%AF%BB"&gt;性能基准测试解读&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#10-%E6%9C%AA%E6%9D%A5%E8%B6%8B%E5%8A%BFkotlin-multiplatformloom-%E4%B8%8E-valhalla"&gt;未来趋势：Kotlin Multiplatform、Loom 与 Valhalla&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#11-%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98-faq"&gt;常见问题 FAQ&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;hr&gt;
&lt;h2 id="1-jvm-作为语言平台字节码之上的编程世界"&gt;1. JVM 作为语言平台：字节码之上的编程世界&lt;/h2&gt;
&lt;h3 id="11-字节码与-jit一切语言的共同后端"&gt;1.1 字节码与 JIT：一切语言的共同后端&lt;/h3&gt;
&lt;p&gt;Java 虚拟机（JVM）自 1995 年诞生以来，早已超越了 Java 语言的专属运行时，演变为一个通用的托管执行平台。JVM 的核心设计哲学是：&lt;strong&gt;编译到底层无关的字节码（Bytecode），由虚拟机执行并通过即时编译器（JIT）优化为机器码&lt;/strong&gt;。这一层抽象使得任何能编译为 JVM 字节码的编程语言，都能享受到跨平台、垃圾回收、性能优化和丰富的生态库。&lt;/p&gt;</description></item><item><title>21. Spring Native 与 GraalVM 原生镜像</title><link>https://plumephp.com/java-spring-native-graalvm/</link><pubDate>Fri, 14 Aug 2026 10:06:00 +0800</pubDate><guid>https://plumephp.com/java-spring-native-graalvm/</guid><description>&lt;p&gt;Java 启动慢、内存大是长期被诟病的痛点。传统 JVM 采用&lt;strong&gt;热点代码探测 + JIT 编译&lt;/strong&gt;的模型，运行一段时间后性能极佳，但启动阶段需要解释执行、类加载、动态编译，导致冷启动在秒级甚至十秒级。GraalVM Native Image 通过&lt;strong&gt;Ahead-Of-Time（AOT）编译&lt;/strong&gt;，将 Java 字节码直接编译为机器码，实现&lt;strong&gt;毫秒级启动&lt;/strong&gt;和&lt;strong&gt;更小的内存占用&lt;/strong&gt;。&lt;/p&gt;</description></item></channel></rss>