What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Java Weekly Issue 666, updated October 2, 2026, brings together JDK 27 performance changes, JDK 28 proposals, a warning about JVM latency benchmarks, durable background work, and the case for starting many products as monoliths. The most useful takeaway is not a single performance number or architecture rule: measure your own workload, understand what your benchmark actually schedules, and match infrastructure to the complexity you need.
What Issue 666 covers
Baeldung’s Java Weekly Issue 666 is an editorial roundup rather than a single technical report. Its framing is “Monoliths, Java 28 and performance. A good week.” Among its listed subjects are JDK 27 performance, JDK 28 proposals, Java libraries and frameworks, background-work orchestration, and software architecture. The Pick of the Week is Martin Fowler’s essay “Monolith First.”
The issue also links to stories about formatters and benchmarks, Kotlin, Quarkus Desktop, a Thymeleaf webinar, BoxLang AI, JobRunr, Quarkus, Spring AI, Micronaut, workload attestation, container sizing for media processing, developer practices, and CSS. Those links provide a useful map of the week, but their titles alone do not establish the details of the linked articles.
What JDK 27’s performance changes mean
In its September 28, 2026 report, Inside Java says more than 2,300 commits landed in OpenJDK since JDK 26 and describes a range of local performance changes in JDK 27. The article reports measurements for particular operations and hardware; it cautions that results depend on the application, data shape, heap sizing, garbage collector, warmup, and compilation state. Those percentages should not be read as expected whole-application speedups.
Selected benchmark results
- HashMap bulk operations: In a benchmark on AWS Graviton with deliberately polymorphic call sites, selected
HashMap.putAll()andHashMap(Map)cases took 61% to 86% less operation time. One reported example fell from about 10,593 ns/op to 1,533 ns/op. - Attributed text: The reported iteration cases with one or more attributes took 35% to 40% less time; creating a string with one attribute allocated about 20% less memory.
- Cryptography: A selected AES/ECB benchmark on an Intel Core i9-14900HX reported roughly 37% higher throughput. The report also gives SHA-3 gains for specified AVX2 and AVX-512 setups; these are architecture-dependent measurements.
Defaults that can affect an application
JDK 27 enables G1 as the default garbage collector everywhere, according to Inside Java. Serial GC remains available with -XX:+UseSerialGC. A changed default is not a guarantee that G1 is best for every workload.
Compact Object Headers are also enabled by default. For a typical 64-bit HotSpot configuration, the report describes the header shrinking from 12 bytes to 8 bytes. It cites earlier JEP 519 measurements showing 22% lower heap use and 8% lower CPU use in one SPECjbb2015 configuration. Those figures describe that configuration, not savings every application should expect.
Rank #2
How to evaluate the upgrade
Compare your application on JDK 27 against its existing runtime using representative traffic and data. Change one relevant setting at a time and track startup time, allocation, live-set size, tail latency, and CPU as well as peak throughput. A microbenchmark can identify a promising optimization; only application-level measurement can show whether it matters to your workload.
Why a co-located load generator can distort latency results
A September 24, 2026 study by Jonas Norlinder, Anil Rajput, and Tobias Wrigstad examines SPECjbb2015 setups in which the workload generator and backend run in the same or separate JVMs. The authors emphasize that their experimental configurations are not compliant submissions for official SPECjbb2015 scores. Their finding is about test design: if garbage collection pauses the JVM responsible for generating load, that JVM cannot schedule requests during the pause.
Recommended Free Tools
Recording scheduled rather than actual submission times can correct for some blocking-call coordinated omission, but it cannot reconstruct requests that a paused generator never scheduled. In the authors’ setup, Composite-Net produced roughly two to three times the p99 response time of Distributed for collectors with non-trivial pauses. ZGC, whose pauses were under 1 ms in that test setup, did not show the same discrepancy. These results apply to the reported hardware, configuration, and test, not to all garbage collectors or applications.
For latency-focused SPECjbb2015 analysis, the authors recommend MultiJVM or Distributed modes, which keep the generator in its own JVM. The practical lesson is to check whether the load generator can keep issuing the intended traffic while the system under test is paused; otherwise, the test may understate the latency experienced under that load.
Rank #4
Durable execution: a property, not a particular product
Durable execution means that important work can survive a crash and resume. It is a desired behavior, not a synonym for one workflow engine. A September 30, 2026 Foojay article by Nicholas D’hondt, who works on the JobRunr background-job scheduler, contrasts replay-based workflow engines with implementations that checkpoint progress in a database. Either approach still has to account for external side effects: an operation can succeed before the process records that it is complete. Making such operations idempotent helps prevent retries from applying the same effect twice.
When a workflow engine may be worth it
A workflow engine can justify its added operational machinery when a workflow needs deep branching, cross-language coordination, replay and execution history, signals, timers, or child workflows. A database-backed scheduler may be a better fit for routine background tasks without those orchestration needs. The decision depends on the work per step, throughput, persistence and infrastructure requirements, and how the system handles retries and external effects.
Best Value
D’hondt’s article reports a benchmark of 1,000 orders on a dedicated 8-core Hetzner server. For instant steps, it measured 1.8 seconds for JobRunr on Postgres and 13.6 seconds for self-hosted Temporal; with 25 ms of work per step, the times were 8.4 and 13.7 seconds. It also reports 13.3 versus 83.2 CPU-seconds, peak memory of 388 versus 868 MB, and 1,181 Postgres transactions for the queue versus 113,218 transactions across Temporal’s two databases. These are results from the author’s specified benchmark, not independent comparative testing or a universal product ranking. For a real choice, compare replay needs, operational burden, writes, resource use, and performance using your own workflow.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Monolith first is a strategy, not a rule
Martin Fowler’s “Monolith First,” published June 3, 2015, argues that many new products benefit from beginning as a monolith while teams learn what the product needs and where stable service boundaries might lie. Microservices add coordination costs, so adopting them before those boundaries are understood can make change harder rather than easier.
Fowler labels the recommendation tentative and says the evidence is sparse. He also recognizes situations that may favor a different starting point, including teams with relevant microservices experience and replacement systems whose boundaries are already clearer. The useful question is not whether monoliths or microservices are universally superior, but whether the product and team have enough known complexity to justify distributed-service coordination now.
What changed in Spring AI 2.1.0-M1
Spring announced Spring AI 2.1.0-M1 on September 25, 2026 as the first milestone in the 2.1 line. It is built against Spring Boot 4.2.0-M2 and introduces initial ordered message-content support, OpenAI Responses API support, and a way to write precomputed embeddings into a vector store. This is a milestone release, not a final API contract: Spring says the new APIs are ready to try but may change before general availability.
Do these 3 things before closing this tab:
1Repair Windows errors before they cause bigger problems2Fix the driver behind crashes, sound loss and screen glitches3Clear out junk files and repair common Windows errorsHow to read the week’s technical claims
Issue 666 mixes release announcements, technical measurements, and opinion. Keep their evidence in view when acting on them: JDK benchmark gains are local results; the SPECjbb2015 study disclaims official-score compliance; the durable-execution comparison was written by a JobRunr employee; and Fowler presents monolith-first as qualified advice, not a quantified industry finding. The roundup is most useful as a set of leads for decisions you can validate against your own software and constraints.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




