diff --git a/_includes/header-navigation.html b/_includes/header-navigation.html index 5a97e5b154..887b88fd29 100644 --- a/_includes/header-navigation.html +++ b/_includes/header-navigation.html @@ -15,10 +15,11 @@
Quarkus tailors your application for GraalVM and HotSpot. Amazingly fast boot time, incredibly low RSS memory (not just heap size!) offering near instant scale up and high density memory utilization in container orchestration platforms like Kubernetes. We use a technique we call compile time boot.
Built on a robust reactive core, Quarkus ensures fast and efficient performance, supporting the development of a wide variety of modern applications.
+ + +Quarkus streamlines framework optimizations in the build phase to reduce runtime dependencies and improve efficiency. By precomputing metadata and optimizing class loading, it ensures fast startup times for JVM and native binary deployments, cutting down on memory usage.
Quarkus provides a cohesive, fun to use, full-stack framework by leveraging a growing list of over fifty best-of-breed libraries that you love and use. All wired on a standard backbone.
+ + +A cohesive platform for optimized developer joy with unified configuration and no hassle native executable generation. Zero config, live reload in the blink of an eye and streamlined code for the 80% common usages, flexible for the remainder 20%.
The combination of Quarkus and Kubernetes provides an ideal environment for creating scalable, fast, and lightweight applications. Quarkus significantly increases developer productivity with tooling, pre-built integrations, application services, and more.
A cohesive platform for optimized developer joy with unified configuration and no hassle native executable generation. Zero config, live reload in the blink of an eye and streamlined code for the 80% common usages, flexible for the remainder 20%.
+ + +Quarkus provides a cohesive, fun to use, full-stack framework by leveraging a growing list of over fifty best-of-breed libraries that you love and use. All wired on a standard backbone.
+Combine both the familiar imperative code and the reactive style when developing applications.
Quarkus redefines Java development by shifting work to the build phase. This approach minimizes runtime dependencies, maximizes dead code elimination, and introduces clear metadata contracts, resulting in leaner and more efficient applications.
+The Quarkus approach helps to "strip out" all code which is only necessary to validate the user model
+All that code is run only during the compilation phase; the classes don't even get loaded when the app is started. This means the JIT can make much better optimisations, and spend less memory in doing so.
+By performing these optimizations at build time, Quarkus ensures that the heavy lifting is done once, not at every startup, reducing memory usage and startup time.
+This approach benefits both GraalVM native images and traditional HotSpot JVM deployments, leading to faster, smaller, and more resource-efficient Java applications.
+Quarkus reduces memory utilization for both traditional JVM deployments as well as native binaries using Ahead-of-Time (AOT) Compilation with GraalVM. In a traditional architecture many classes are loaded into memory, only to be pruned out later. Quarkus is able to avoid this wasted classloading. Quarkus also leverages build-time metadata processing, lowering memory consumption during execution.
+Quarkus delivers fast startup times that allow for automatic scaling up and down of microservices on containers or Kubernetes deployments. It achieves fast startup times by performing build-time processing for both JVM and native binary deployments, reducing the work done during runtime. Quarkus precomputes metadata and optimizes class loading, significantly cutting down on initialization time. For example, some frameworks do “auto-wiring” to external dependencies by attempting to load many possible implementations, using Java Reflection APIs. Quarkus is able to pre-wire in the dependency and bypass this rather slow process.
+For natively compiled binaries, Quarkus uses GraalVM to eliminate startup overhead resulting in near-instant startup times by running directly as a native executable.
+Doing more work upfront at build time doesn’t just improve memory footprint and startup times. It also makes normal program execution faster. How? The output of a Quarkus build process is JIT-friendly, which means the JIT can make better optimizations, and get the application to a super-optimized state faster. For example, because there’s less unused bytecode in a Quarkus application, the JIT can inline more effectively. Early elimination of unused classes also enables the JVM to use monomorphic method dispatching, instead of the much slower megamorphic method dispatching. Megamorphic dispatching is necessary when there are several implementations of the same interface present on the classpath.
+Quarkus reduces the footprint of Java applications by employing build-time processing to eliminate unnecessary runtime dependencies and by optimizing the application’s deployment artifacts. It packages only the essential classes and resources needed at runtime, removing unused code through techniques like dead code elimination. When using GraalVM for native compilation, Quarkus further reduces the footprint by compiling the application into a compact native binary, stripping out the JVM and related dependencies.
+Traditionally, when optimizing software performance, there is often a tradeoff between throughput and memory footprint, or between startup time and eventual throughput. In contrast, many of the Quarkus optimizations, such as dead code elimination, improve multiple aspects of application performance. The Quarkus way eliminates wasted work and results in a leaner application which both starts fast and runs fast, all while consuming less memory.
+"Reactive CRUD Performance: A Case Study" Blog Post
+ "Measuring Performance" guide
+