Skip to content

Commit aae4c71

Browse files
committed
Quarkus as a powerful runtime - Blog post #2
1 parent 64b0627 commit aae4c71

10 files changed

+148
-0
lines changed
Lines changed: 148 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,148 @@
1+
---
2+
layout: post
3+
title: 'Quarkus: Runtime and Framework for Cloud-Native Java'
4+
date: 2025-10-23
5+
tags: quarkus runtime framework performance cloud-native
6+
synopsis: This post explores how Quarkus speeds up development, cuts costs, and makes development enjoyable for cloud-native Java.
7+
author: mmaler
8+
thumbnailimage: /assets/images/posts/mmaler-blog-posts/quarkus-as-a-powerful-runtime.jpeg
9+
---
10+
:imagesdir: /assets/images/posts/mmaler-blog-posts/2-Quarkus-as-a-powerful-runtime/
11+
ifdef::env-github,env-browser,env-vscode[:imagesdir: ../assets/images/posts/mmaler-blog-posts/2-Quarkus-as-a-powerful-runtime/]
12+
13+
= Quarkus: Runtime and Framework for Cloud-Native Java
14+
15+
In this post, “runtime” means the full execution stack in production: JVM or native, plus Quarkus and the integrated frameworks.
16+
Quarkus is a Java runtime that seamlessly integrates popular frameworks and libraries, shaping both the structure of modern applications and the developer experience behind them.
17+
18+
From a complementary perspective, “framework” denotes the higher-level layer that provides structure and APIs; in this sense, Quarkus can also be viewed as a framework.
19+
20+
== Why Quarkus stands out
21+
22+
In modern software development, runtimes and frameworks form the foundation of productivity and consistency.
23+
Frameworks promote uniformity, simplify infrastructure, and enable automation at scale.
24+
25+
image::history.png[alt="A brief timeline leading to modern Java and Quarkus", width=100%]
26+
27+
Quarkus, a truly cloud-native Java runtime, integrates multiple frameworks under one roof and optimizes them for developer efficiency, memory usage, and lightning-fast startup.
28+
As a result, it provides a solid foundation for building modern, cloud-native applications.
29+
30+
Quarkus integrates established Java frameworks, such as CDI, JAX-RS, and Hibernate, but it also enforces its own conventions, uses annotations to drive behavior, and defines how applications are structured.
31+
32+
In this sense, Quarkus is a framework that serves as a runtime and platform for cloud-native Java applications. It also embraces industry standards, offering compatibility with technologies such as Spring, Kafka, and Camel to support familiar and flexible development models.
33+
34+
== Quarkus as a versatile framework
35+
36+
Beyond standard traits common to modern frameworks, Quarkus introduces two platform-defining features: build-time optimization and deep extensibility.
37+
38+
* *Build-time optimization*: Quarkus shifts work from runtime to build time wherever possible.
39+
This approach reduces startup overhead and memory usage, resulting in a lean, fast, and efficient application tailored for production.
40+
41+
image::2-build-time-principle.png[alt="Build-time principle in Quarkus: being fast by doing less at runtime", width=100%]
42+
image::3-BuildTimeP-Benefits-JVM.png[alt="Benefits of Quarkus build-time processing on the JVM", width=100%]
43+
image::4-BuildTimeP-Benefits-native.png[alt="Benefits of Quarkus native image compared to JVM", width=100%]
44+
image::5-JVM-Snapshotting-Native.png[alt="JVM snapshotting vs native images in Quarkus", width=100%]
45+
46+
47+
* *Extensibility*: Quarkus exposes extension points for everything from startup hooks to request filters.
48+
Over 800 extensions allow seamless integration with modern technologies such as Kafka, OpenTelemetry, and OpenID Connect.
49+
50+
These extensions integrate with Quarkus and participate in its build-time and runtime lifecycle, making them first-class citizens of the Quarkus platform.
51+
52+
=== Simplified developer experience
53+
54+
Frameworks succeed when they reduce complexity without sacrificing power.
55+
Quarkus does exactly that:
56+
57+
* Preconfigures popular libraries with sensible defaults.
58+
* Offers unified configuration and developer tooling.
59+
* Provides instant feedback with live reload and continuous testing.
60+
61+
This makes Quarkus both powerful and approachable.
62+
63+
You can start with a simple REST endpoint and scale it into a production-grade service without changing your development model.
64+
65+
image::6-Frictionless.png[alt="Frictionless developer experience: live reload, dev services, continuous testing", width=100%]
66+
67+
These features reflect Quarkus’s dual role: it behaves like a framework during development, offering structure, defaults, and conventions, and it acts as a runtime during execution, delivering performance, efficiency, and operational consistency.
68+
69+
=== Performance that matters
70+
71+
As described in the ACM article on application frameworks, Google's internal framework design emphasized fast startup and resilience against cascading failures.
72+
Quarkus was built with these principles in mind.
73+
74+
Native image generation with GraalVM enables cold starts in milliseconds and a minimal memory footprint, allowing cost-effective deployment in containers and serverless environments.
75+
76+
Quarkus also includes structured health checks, metrics, and tracing, thereby aligning with production standards from day one.
77+
78+
image::7-success-stories.png[alt="Real-world success stories using Quarkus", width=100%]
79+
80+
81+
=== Secure by default
82+
83+
Quarkus separates application logic from infrastructure concerns.
84+
By structuring the request lifecycle with standardized handlers such as exception mappers, filters, and interceptors, it supports strong security practices:
85+
86+
* Secure headers and CSRF protection out of the box.
87+
* Native support for role-based access control.
88+
* Seamless integration with OpenID Connect providers.
89+
90+
Just as Google’s frameworks reduced vulnerabilities through safe APIs and typed response models, Quarkus applies similar principles by using conventions and standardized components to promote secure defaults and trusted integrations.
91+
92+
=== Observability and control surfaces
93+
94+
Common control surfaces, such as metrics, logging, tracing, and configuration, are essential for Site Reliability Engineers (SREs) and platform teams.
95+
96+
Quarkus exposes:
97+
98+
* Unified logging via quarkus-logging.
99+
* Structured metrics and tracing with Micrometer and OpenTelemetry.
100+
* Declarative configuration via application.properties or environment overrides.
101+
102+
This standardization enables automation and scalable monitoring.
103+
104+
=== Modular and production-ready
105+
106+
Following Google's principle of keeping frameworks lean at the core and modular at the edge, Quarkus delivers:
107+
108+
* A minimal core for fast startup.
109+
* Pluggable modules for authentication, tracing, messaging, and more.
110+
* Dev Services for automatic provisioning of databases, brokers, and containers in dev mode.
111+
112+
Whether you're building a prototype or deploying to OpenShift, Quarkus adapts.
113+
This modularity spans both the framework-level APIs developers work with and the runtime behaviors that execute beneath them.
114+
115+
Because Quarkus modularity is declarative and unified across extensions, it supports a platform-like developer experience without the rigidity of traditional frameworks.
116+
117+
=== Building your stack with Quarkus
118+
119+
Frameworks can serve as a foundation for creating higher-level abstractions.
120+
121+
Quarkus fits naturally into this model—not by becoming a platform itself, but by enabling teams to build their customized stacks and frameworks on top of it.
122+
123+
Unlike many traditional frameworks, Quarkus provides a unified extension architecture that supports deep customization.
124+
Organizations can tailor Quarkus to fit specific domains, technologies, or compliance needs.
125+
This enables the creation of organization-specific developer experiences, as seen in solutions like Amadeus’s SQube.
126+
127+
By encouraging consistency, offering build-time integration, and exposing clean extension points, Quarkus supports the creation of opinionated, scalable internal frameworks without forking or reinventing the core.
128+
129+
With Quarkus, teams can focus on business logic while the runtime handles infrastructure concerns, and the platform provides consistency across services.
130+
This is similar to Logicdrop, which refactored its entire Spring Boot stack with Quarkus, reducing container size by ~75%, achieving sub-second startup times, and significantly improving developer productivity.
131+
132+
For more information, see the link:https://quarkus.io/blog/logicdrop-customer-story/[Logicdrop customer story] and their link:https://quarkus.io/blog/logicdrop-automating-quarkus-with-gitlab/?utm_source=chatgpt.com[GitLab automation write-up].
133+
134+
== Conclusion
135+
136+
Quarkus unifies the strengths of a framework and a runtime.
137+
138+
As a framework, it provides structure, conventions, and a cohesive developer experience; as a runtime, it delivers fast startup, low memory use, and operational consistency in the cloud.
139+
140+
This dual role helps teams standardize practices, reduce costs, and ship resilient cloud-native services — while preserving developer joy.
141+
142+
image::8-expectations.png[alt="Setting expectations for performance and developer experience with Quarkus", width=100%]
143+
144+
For a closer look at how Quarkus makes Java cloud-native, see the https://quarkus.io/blog/mmaler-blogpost-1-intro/[introductory blog post].
145+
146+
== What’s next?
147+
148+
Explore more Quarkus use cases in the link:https://quarkus.io/blog/[official blog archive], or check out the link:https://quarkus.io/guides/[Quarkus guides] to start building your own cloud-native stack today.
451 KB
Loading
742 KB
Loading
508 KB
Loading
324 KB
Loading
409 KB
Loading
376 KB
Loading
410 KB
Loading
306 KB
Loading
358 KB
Loading

0 commit comments

Comments
 (0)