How and why I turned my old Java project into a first-class serverless component
summary
Migrates Drools/jBPM into a serverless-ready stack by replacing runtime reflection and dynamic classloading with an executable Java model and ahead‑of‑time code generation, then building native images with GraalVM native image and a Quarkus extension. Resulting service boots in about startup 7 ms, uses ~22 MB memory, and matches JVM semantics without dynamic compilation; dev mode offers hot reload. Limitations: no Java agents, limited reflection, and ecosystem versions are a moving target.
AI-written summary · about
chapters (25)
- 0:00Intro
- 0:46What is this talk about
- 1:56Rule Engine
- 3:30Rule Structure
- 4:20BPM
- 5:32CodeIto
- 8:55Running on premise
- 9:50Running service
- 10:17Onboarding service
- 10:52Process composition
- 11:39Startup time
- 16:43How we got there
- 18:31Limitations
- 20:08Why this is a problem
- 21:21Limitation
- 22:08Reflection
- 23:47Code Generation
- 24:41Explicit Representation
- 26:17Dynamically Loading
- 26:33XML Describing
- 29:45Quercus
- 31:06Why use Quercus
- 32:31Quercus Extensions
- 34:32Quercus Demo
- 38:22Feedback
related talks
55mQuarkus brings Serverless to Java developers
36mServerless Java
52mContainerless, Bloatless, YAML-less, Serverless Java #slideless
30mSupersonic Java Quarkus with Knative serverless
56mThinking in Serverless Java (Code)
49mThe Java Cloud-Native Stack for Microservices and Serverless Architecture
46mServerless Java: Challenges and Triumph
46mThe Java Cloud-Native Stack for Microservices and Serverless Architecture
