Supporting Spring Applications with GraalVM Native Image
A Guide to Running Spring Apps in Native Environment
Introduction
- Spring applications and GraalVM native image
- Overview of presentation content
- Benefits of using GraalVM native image
- Challenges for framework developers
Why GraalVM Native Image?
- Highly requested feature
- Unique runtime characteristics of GraalVM
- Improved memory efficiency and startup time
- Predictable start performance
Strategy for Framework Support
- Need for framework support in GraalVM native image
- Challenges faced by framework developers
- Approach of Iot processing in Spring
- Expected scope, limitations, and considerations
Spring Native Project
- Overview of Spring Native project
- Evolution of the project and community feedback
- Achieving first-class support in Spring
- Retiring the Spring Native experimental project
How Spring Supports GraalVM
- Challenges in supporting features in a native image
- Eligible metadata and hint contributions
- Combining analysis and code generation
- Streamlining application compilation and packaging
Testing and Troubleshooting
- Testing existing Spring applications in native image
- Running applications in Ao mode
- Running test suites in native image
- Identifying and addressing issues
Adding Reflection Support
- Using runtime hint registration
- Registering constructors and methods
- Contributing metadata for resource loading
- Providing metadata for proxies
Conclusion
- Summary of the presentation
- Benefits and considerations of using GraalVM native image
- Ongoing work and future developments