Tagged articles
341 articles
Page 1 of 4
Coder Trainee
Coder Trainee
May 4, 2026 · Backend Development

Spring Boot Startup Process: A Zero‑to‑One Source Code Walkthrough

This article dissects the Spring Boot startup sequence step by step, showing how a minimal @SpringBootApplication triggers listeners, type deduction, auto‑configuration loading, environment preparation, IOC container creation, bean refresh, and embedded Tomcat launch, with interview‑ready explanations.

JavaSpring BootStartup Process
0 likes · 9 min read
Spring Boot Startup Process: A Zero‑to‑One Source Code Walkthrough
Java Architect Essentials
Java Architect Essentials
Apr 26, 2026 · Backend Development

15 SpringBoot Performance Tweaks to Handle Million-Scale Concurrency

This guide walks through exposing metrics, integrating Prometheus and Grafana, using async‑profiler flame graphs, tuning Tomcat/Undertow, optimizing JVM flags, applying SkyWalking tracing, and applying layer‑wise code, cache, and thread‑pool improvements so a SpringBoot service can reliably serve millions of concurrent requests.

GrafanaNGINXPrometheus
0 likes · 20 min read
15 SpringBoot Performance Tweaks to Handle Million-Scale Concurrency
Java Architect Essentials
Java Architect Essentials
Apr 8, 2026 · Backend Development

Switching Spring Boot 3 from Tomcat to Undertow: Step‑by‑Step Configuration and Performance Tuning

This guide explains why Tomcat may become a bottleneck under sudden high concurrency, introduces Undertow as a lightweight non‑blocking alternative, and provides detailed Maven, YAML/Properties, thread‑pool, timeout, request‑size, compression, HTTP/2, and access‑log configurations along with monitoring tips for Spring Boot 3 applications.

Backend DevelopmentConfigurationTomcat
0 likes · 6 min read
Switching Spring Boot 3 from Tomcat to Undertow: Step‑by‑Step Configuration and Performance Tuning
java1234
java1234
Mar 31, 2026 · Backend Development

How Many Concurrent Requests Can Spring Boot Handle?

This article explains how Spring Boot processes concurrent HTTP requests using its embedded Tomcat thread pool, details the default limits (200 max threads, 10 min threads, queue size 10,000), shows how to tune these settings via configuration files, demonstrates async controllers, and suggests performance testing tools to measure real‑world capacity.

AsyncPerformance TestingSpring Boot
0 likes · 7 min read
How Many Concurrent Requests Can Spring Boot Handle?
Java Architect Handbook
Java Architect Handbook
Mar 22, 2026 · Backend Development

Hidden 70 ms Delay in Spring Boot: Tomcat Embed Bug Triggered by Swagger UI

After optimizing a Spring Boot channel service, a mysterious extra ~100 ms appeared per request; detailed tracing with Arthas revealed that embedded Tomcat repeatedly loads Swagger UI META‑INF resources, causing a 70 ms overhead, which can be eliminated by upgrading Tomcat or removing the Swagger dependencies.

ArthasEmbedded Tomcat BugPerformance debugging
0 likes · 30 min read
Hidden 70 ms Delay in Spring Boot: Tomcat Embed Bug Triggered by Swagger UI
Selected Java Interview Questions
Selected Java Interview Questions
Mar 6, 2026 · Backend Development

Master Maven: From Plugin Setup to Full Web Project Build

This guide walks through Maven’s core workflow for Java backend development, covering plugin configuration, automatic project setup in IntelliJ IDEA, detailed pom.xml settings—including properties, dependencies, plugins—and code examples for Servlets and JSPs, plus dependency scope handling to avoid runtime conflicts.

Backend DevelopmentDependency ScopeIntelliJ IDEA
0 likes · 11 min read
Master Maven: From Plugin Setup to Full Web Project Build
Ops Community
Ops Community
Mar 2, 2026 · Backend Development

How to Supercharge Tomcat 11 on JDK 21: Real‑World JVM, Connection Pool, and Virtual Thread Tuning

This guide walks you through practical performance tuning of Tomcat 11 on JDK 21, covering JVM memory settings, GC selection, connector and thread‑pool optimization, virtual‑thread integration, benchmark scripts, security hardening, high‑availability deployment, and comprehensive monitoring and troubleshooting techniques.

DockerJDK21JVM
0 likes · 51 min read
How to Supercharge Tomcat 11 on JDK 21: Real‑World JVM, Connection Pool, and Virtual Thread Tuning
Code Ape Tech Column
Code Ape Tech Column
Feb 25, 2026 · Backend Development

Why a Spring Boot API Took 100ms Extra: Tracing Tomcat’s Hidden Jar Loading Bug

A Spring Boot channel service showed an unexpected 100 ms latency; by systematically checking network, using curl, and employing Arthas to trace Spring MVC and Tomcat internals, the author discovered a Tomcat‑embed bug that repeatedly loads Swagger‑UI JAR resources, which is resolved by upgrading Tomcat.

ArthasEmbedded TomcatPerformance debugging
0 likes · 15 min read
Why a Spring Boot API Took 100ms Extra: Tracing Tomcat’s Hidden Jar Loading Bug
Java Architecture Diary
Java Architecture Diary
Feb 5, 2026 · Backend Development

How Spring Debugger Enables Agent‑Free Remote Debugging of Java Apps

The article explains how JetBrains' Spring Debugger plugin provides remote debugging for Spring applications without using Java agents, detailing the underlying thread‑model tricks, supported containers, practical features like bean inspection and SQL execution, and step‑by‑step JDWP configuration.

IDE pluginJavaTomcat
0 likes · 11 min read
How Spring Debugger Enables Agent‑Free Remote Debugging of Java Apps
Java Web Project
Java Web Project
Jan 23, 2026 · Backend Development

Zero‑Downtime Spring Boot Deployment: Sharing a Port Between Two Instances

This article explains how to update a Spring Boot application without stopping the old process by letting a new instance start on the same port, detailing the Tomcat internals, the required ServletContainerInitializer callbacks, and providing a complete, step‑by‑step implementation with code samples and a live test.

DeploymentJavaPortSharing
0 likes · 9 min read
Zero‑Downtime Spring Boot Deployment: Sharing a Port Between Two Instances
MaGe Linux Operations
MaGe Linux Operations
Jan 12, 2026 · Backend Development

Master JVM Tuning on JDK 21: Reduce GC Pauses and Boost Throughput

This comprehensive guide walks you through diagnosing Full GC pauses on a Java 2020 production outage, explains JVM memory structures, compares JDK 21 garbage collectors, and provides step‑by‑step installation, configuration, and tuning instructions for Tomcat, monitoring tools, and real‑world case studies to achieve stable, high‑throughput services.

JDK21JVMLinux
0 likes · 33 min read
Master JVM Tuning on JDK 21: Reduce GC Pauses and Boost Throughput
Java Architecture Diary
Java Architecture Diary
Jan 8, 2026 · Backend Development

Why Tomcat Outperforms Jetty 15× with Virtual Threads in Spring Boot 4.0

A detailed benchmark shows that enabling Java virtual threads in Spring Boot 4.0 makes Tomcat handle up to fifteen times more requests than Jetty, while startup times remain similar, and the article explains the test setup, configuration steps, native image builds, and the reasons behind Jetty's limitation.

DockerJettySpringBoot
0 likes · 10 min read
Why Tomcat Outperforms Jetty 15× with Virtual Threads in Spring Boot 4.0
Top Architect
Top Architect
Dec 17, 2025 · Backend Development

Zero‑Downtime SpringBoot Updates: Share the Same Port Between Old and New Instances

This article explains how to update a SpringBoot application without stopping the service by letting the old and new processes share the same port, detailing the underlying Tomcat and ServletContainerInitializer mechanisms, providing a step‑by‑step implementation and a demo for seamless zero‑downtime deployments.

DeploymentJavaPortSharing
0 likes · 10 min read
Zero‑Downtime SpringBoot Updates: Share the Same Port Between Old and New Instances
Su San Talks Tech
Su San Talks Tech
Nov 17, 2025 · Backend Development

Unlock Tomcat’s Secrets: Deep Dive into Its Architecture, Design Patterns, and Class Loading

This article provides a comprehensive technical walkthrough of Tomcat, covering its connector and container architecture, lifecycle management, key design patterns such as Composite and Template Method, custom class‑loading mechanisms, hot‑reload process, and includes essential code snippets and diagrams for developers.

Backend DevelopmentClass LoaderDesign Patterns
0 likes · 43 min read
Unlock Tomcat’s Secrets: Deep Dive into Its Architecture, Design Patterns, and Class Loading
Raymond Ops
Raymond Ops
Nov 8, 2025 · Backend Development

Master Tomcat: From Installation to Multi‑Instance Deployment

This guide walks you through Tomcat's concepts, its role as a Java servlet container, step‑by‑step installation and configuration, detailed directory structure, deployment of a sample zrlog application, and how to set up multiple Tomcat instances on a single server, complete with code examples and log configuration.

DockerInstallationMulti-Instance
0 likes · 23 min read
Master Tomcat: From Installation to Multi‑Instance Deployment
Xiao Liu Lab
Xiao Liu Lab
Nov 3, 2025 · Information Security

13 Essential Tomcat Security Baselines to Harden Your Server

Learn how to secure Apache Tomcat by applying a 13‑item baseline that covers account permissions, root‑less operation, strong passwords, disabling manager apps, preventing directory listing, restricting HTTP methods, enabling HTTPS, changing default ports, configuring access logs, custom error pages, hiding server banners, and limiting connections.

HardeningJavaSecurity
0 likes · 12 min read
13 Essential Tomcat Security Baselines to Harden Your Server
Xiao Liu Lab
Xiao Liu Lab
Oct 28, 2025 · Operations

How to Safely Optimize Tomcat Memory for Stable Production

This guide walks you through why Tomcat's default JVM settings are insufficient, common pitfalls when manually editing catalina.sh, and the recommended, maintainable approach using setenv.sh to configure heap, Metaspace, and GC options for reliable, high‑performance server operation.

JVMMemory OptimizationTomcat
0 likes · 7 min read
How to Safely Optimize Tomcat Memory for Stable Production
IT Services Circle
IT Services Circle
Oct 5, 2025 · Backend Development

Why Big Companies Are Dropping Tomcat for Undertow in Spring Boot

Large enterprises are increasingly replacing Spring Boot’s default embedded Tomcat with Undertow because Undertow delivers superior memory efficiency, higher concurrency, lower latency, and more flexible configuration, as demonstrated by detailed performance benchmarks, architectural analysis, and real‑world migration case studies presented in this article.

Spring BootTomcatundertow
0 likes · 13 min read
Why Big Companies Are Dropping Tomcat for Undertow in Spring Boot
MaGe Linux Operations
MaGe Linux Operations
Sep 20, 2025 · Operations

Master Tomcat Memory Tuning: Boost Performance Up to 300%

This comprehensive guide shows how a seasoned operations engineer can dramatically improve Tomcat stability and throughput by understanding JVM memory structures, configuring optimal JVM and connector parameters, selecting the right garbage collector, and implementing robust monitoring and diagnostics to prevent crashes and latency.

JVMMemory OptimizationServer Configuration
0 likes · 15 min read
Master Tomcat Memory Tuning: Boost Performance Up to 300%
Efficient Ops
Efficient Ops
Sep 16, 2025 · Backend Development

Why Tomcat Thread‑Pool Saturation Crashed Our Service and How to Avoid It

A detailed post‑mortem explains how a sudden traffic surge, insufficient pod count, and a custom thread‑pool bottleneck caused Tomcat thread‑pool saturation, health‑check failures, and a zone‑wide outage, and offers concrete lessons on capacity planning, monitoring, and safe coding practices.

CapacityPlanningJavaThreadPool
0 likes · 28 min read
Why Tomcat Thread‑Pool Saturation Crashed Our Service and How to Avoid It
Architect
Architect
Sep 11, 2025 · Backend Development

Boost Spring Boot Performance: 10 Essential Config Tweaks for High‑Load Apps

This article walks through ten practical Spring Boot configuration optimizations—including Tomcat connection pool, HikariCP, Jackson timezone handling, Logback rotation, Caffeine caching, Actuator endpoint exposure, file upload limits, async thread pools, static resource caching, and transaction timeouts—providing ready‑to‑use YAML snippets and clear explanations for each setting.

ConfigurationHikariCPSpring Boot
0 likes · 15 min read
Boost Spring Boot Performance: 10 Essential Config Tweaks for High‑Load Apps
Java Architect Essentials
Java Architect Essentials
Sep 5, 2025 · Backend Development

Zero‑Downtime SpringBoot Updates: Share the Same Port Seamlessly

This article explains how to achieve zero‑downtime updates for SpringBoot applications by allowing two processes to share the same port, detailing the underlying Tomcat and ServletContainerInitializer mechanisms, providing a step‑by‑step implementation with code examples, and demonstrating seamless hot‑swap without service interruption.

HotSwapServletSpringBoot
0 likes · 9 min read
Zero‑Downtime SpringBoot Updates: Share the Same Port Seamlessly
Cognitive Technology Team
Cognitive Technology Team
Sep 3, 2025 · Backend Development

Why Did My Java Service Hit 90% Memory? Uncovering Hidden NioChannel Leaks

An in‑depth investigation of a Java service’s memory alarm reveals that a surge of temporary NioChannel objects, caused by high QPS and insufficient socket reuse, prematurely promotes objects to the old generation, leading to uncollected memory growth, and the article details the diagnosis, GC tuning, and mitigation steps.

JVMMemoryLeakTomcat
0 likes · 29 min read
Why Did My Java Service Hit 90% Memory? Uncovering Hidden NioChannel Leaks
Sohu Tech Products
Sohu Tech Products
Aug 28, 2025 · Backend Development

Unlocking Tomcat’s Secrets: Deep Dive into Architecture, Design Patterns, and Class Loading

This comprehensive guide explores Tomcat’s mature architecture, detailing its connector and container components, the underlying design patterns such as composite, observer, and template method, and the custom class‑loading mechanisms that enable modularity, hot‑reloading, and isolation for Java web applications.

Backend DevelopmentDesign PatternsJava
0 likes · 43 min read
Unlocking Tomcat’s Secrets: Deep Dive into Architecture, Design Patterns, and Class Loading
Dunmao Tech Hub
Dunmao Tech Hub
Aug 25, 2025 · Operations

One-Click Linux Scripts to Install Rust, Tomcat, Docker, and Nginx

This guide provides four ready-to-use one‑click scripts for Linux that automate the installation of a Rust development environment, Tomcat 9 server, Docker engine, and Nginx web server, including supported distributions, usage steps, and post‑install considerations.

DockerInstallationRust
0 likes · 7 min read
One-Click Linux Scripts to Install Rust, Tomcat, Docker, and Nginx
Liangxu Linux
Liangxu Linux
Aug 17, 2025 · Backend Development

Step-by-Step Guide to Configure Tomcat Virtual Hosts on CentOS for Multiple Domains

This tutorial walks you through preparing separate site directories, editing Tomcat's server.xml to define Host entries, restarting the service, and testing each domain, while also covering firewall, DNS, and production‑grade security considerations for deploying multiple websites on a single CentOS server.

CentOSConfigurationDeployment
0 likes · 6 min read
Step-by-Step Guide to Configure Tomcat Virtual Hosts on CentOS for Multiple Domains
Code Ape Tech Column
Code Ape Tech Column
Jul 16, 2025 · Backend Development

7 Proven Spring Boot Performance Optimizations for Faster Apps

This article presents seven practical Spring Boot performance tuning techniques—including asynchronous execution, Tomcat connection tuning, component scanning, switching to Undertow, BufferedWriter usage, DeferredResult handling, and AsyncHandlerInterceptor interception—each illustrated with concise Java code examples to help developers boost application speed and scalability.

AsynchronousJavaPerformance Optimization
0 likes · 9 min read
7 Proven Spring Boot Performance Optimizations for Faster Apps
Raymond Ops
Raymond Ops
Jul 15, 2025 · Backend Development

Master Tomcat: Step‑by‑Step Installation, Configuration, and Nginx Integration

This guide walks you through installing Tomcat via yum or binary packages, configuring its core directories and ports, setting up virtual hosts, and integrating Tomcat with Nginx for static‑dynamic separation, providing complete commands and explanations for a production‑ready Java web server on Linux.

ConfigurationInstallationNGINX
0 likes · 12 min read
Master Tomcat: Step‑by‑Step Installation, Configuration, and Nginx Integration
Java Architecture Diary
Java Architecture Diary
Jun 20, 2025 · Backend Development

What’s New in Spring Boot 3.5.3? Key Fixes, Features, and Upgrade Guide

Spring Boot 3.5.3, the first patch of the 3.5 series, introduces critical fixes for a severe issue in 3.5.1, upgrades Tomcat to 10.1.42 with multipart limits, adds ConfigData options support, resolves numerous performance, configuration, actuator, and binding bugs, improves documentation, and updates a wide range of core, database, server, and monitoring dependencies, making the upgrade strongly recommended.

JavaRelease NotesSpring Boot
0 likes · 8 min read
What’s New in Spring Boot 3.5.3? Key Fixes, Features, and Upgrade Guide
Architect's Alchemy Furnace
Architect's Alchemy Furnace
Jun 17, 2025 · Backend Development

How to Run Multiple SpringBoot Microservices on a Single Tomcat with Minimal Resources

This guide explains how to adapt a distributed micro‑service architecture to run all SpringBoot services inside one external Tomcat instance by changing packaging to WAR, configuring server.xml, setting memory options, adjusting virtual addresses, handling logs, and registering services with Nacos for low‑memory environments.

DeploymentJavaNacos
0 likes · 17 min read
How to Run Multiple SpringBoot Microservices on a Single Tomcat with Minimal Resources
Top Architect
Top Architect
Jun 4, 2025 · Backend Development

Replacing Tomcat with Undertow in Spring Boot: Configuration, Performance Comparison, and Recommendations

This article explains how to replace the default embedded Tomcat container in Spring Boot with Undertow, details the configuration steps and Maven dependencies, compares performance and memory usage between the two servers, and concludes with a recommendation for high‑concurrency applications, while also promoting related AI resources and services.

BackendJavaSpringBoot
0 likes · 10 min read
Replacing Tomcat with Undertow in Spring Boot: Configuration, Performance Comparison, and Recommendations
ITPUB
ITPUB
May 18, 2025 · Backend Development

Why Tomcat Alone Isn’t Enough: Leveraging Nginx for Reliable Web Services

The article explains the practical limitations of using only Tomcat—such as DNS IP caps, scaling costs, deployment downtime, and lack of health checks—and demonstrates how adding Nginx as a reverse proxy and load balancer resolves these issues with concrete configuration examples.

DNSDeploymentNGINX
0 likes · 10 min read
Why Tomcat Alone Isn’t Enough: Leveraging Nginx for Reliable Web Services
Top Architect
Top Architect
May 15, 2025 · Backend Development

Using Undertow as an Alternative to Tomcat in Spring Boot

This article explains how Spring Boot’s default embedded Tomcat container can be replaced with the high‑performance Undertow server, provides step‑by‑step Maven configuration, compares their performance and memory usage, and concludes with a recommendation for high‑concurrency applications while also containing promotional material for AI services.

JavaTomcatWeb server
0 likes · 10 min read
Using Undertow as an Alternative to Tomcat in Spring Boot
Lin is Dream
Lin is Dream
Apr 30, 2025 · Operations

How to Implement Gray Release with Nginx: Step‑by‑Step Strategies

This article explains how to use Nginx to implement gray release—gradually rolling out a new application version to a subset of users—by configuring header‑based, cookie‑based, and IP‑address‑based routing strategies, detailing the required Nginx directives, deployment steps, and verification process.

Tomcatgray releasetraffic routing
0 likes · 8 min read
How to Implement Gray Release with Nginx: Step‑by‑Step Strategies
Architect's Tech Stack
Architect's Tech Stack
Mar 24, 2025 · Backend Development

Replacing Tomcat with Undertow in Spring Boot: Configuration and Performance Comparison

This article explains how to replace Spring Boot's default embedded Tomcat with the Undertow container, details the configuration steps, and presents benchmark results showing Undertow's superior throughput and lower memory usage under high‑concurrency workloads, making it a better choice for performance‑critical applications.

JavaSpring BootTomcat
0 likes · 6 min read
Replacing Tomcat with Undertow in Spring Boot: Configuration and Performance Comparison
Top Architect
Top Architect
Mar 9, 2025 · Backend Development

Using Undertow as an Alternative to Tomcat in SpringBoot: Features, Configuration, and Performance Comparison

This article explains how SpringBoot’s default embedded Tomcat can be replaced with the high‑performance Undertow server, shows the necessary Maven dependencies, lists Undertow’s key features, presents benchmark results comparing QPS and memory usage, and concludes with recommendations for high‑concurrency applications while also noting related AI‑product promotions.

JavaTomcatundertow
0 likes · 10 min read
Using Undertow as an Alternative to Tomcat in SpringBoot: Features, Configuration, and Performance Comparison
Top Architect
Top Architect
Feb 25, 2025 · Backend Development

Replacing Tomcat with Undertow in SpringBoot: Configuration, Features, and Performance Comparison

This article explains how SpringBoot's default Tomcat container can be swapped for the high‑performance Undertow server, details Undertow's characteristics, provides Maven configuration steps with code snippets, and presents benchmark results showing superior throughput and lower memory usage for high‑concurrency applications.

JavaTomcatundertow
0 likes · 8 min read
Replacing Tomcat with Undertow in SpringBoot: Configuration, Features, and Performance Comparison
Architect
Architect
Jan 20, 2025 · Backend Development

Resolving a 100 ms Latency Issue in Spring Boot’s Embedded Tomcat Using Arthas Tracing

The article details a step‑by‑step investigation of an unexpected ~100 ms latency in a Spring Boot‑based channel system, covering network checks, curl measurements, Arthas trace and watch commands, identification of TomcatJarInputStream’s repeated jar‑resource loading caused by Swagger dependencies, and the final fix by upgrading the embedded Tomcat version.

ArthasSwaggerTomcat
0 likes · 14 min read
Resolving a 100 ms Latency Issue in Spring Boot’s Embedded Tomcat Using Arthas Tracing
Top Architect
Top Architect
Jan 18, 2025 · Backend Development

Replacing Tomcat with Undertow in Spring Boot: Configuration, Features, and Performance Comparison

This article explains how to replace Spring Boot's default embedded Tomcat container with Undertow, detailing Undertow's features, providing Maven dependency changes, and comparing performance and memory usage through test results, concluding that Undertow offers superior efficiency for high‑concurrency Java web applications.

JavaSpringBootTomcat
0 likes · 9 min read
Replacing Tomcat with Undertow in Spring Boot: Configuration, Features, and Performance Comparison
Top Architect
Top Architect
Dec 25, 2024 · Backend Development

Replacing Tomcat with Undertow in Spring Boot: Configuration, Features, and Performance Comparison

This article explains how Spring Boot uses Tomcat by default, introduces Undertow as a high‑performance alternative, provides step‑by‑step Maven configuration to switch containers, compares Tomcat and Undertow on throughput and memory usage, and recommends Undertow for high‑concurrency Java web applications.

JavaSpringBootTomcat
0 likes · 9 min read
Replacing Tomcat with Undertow in Spring Boot: Configuration, Features, and Performance Comparison
MaGe Linux Operations
MaGe Linux Operations
Dec 20, 2024 · Backend Development

Master Tomcat: Install, Configure, and Integrate with Nginx on Linux

This guide walks you through Tomcat’s overview, multiple installation methods, essential configuration files, port settings, virtual‑host setup, and how to combine Tomcat with Nginx for static‑dynamic separation, providing a complete Linux‑based deployment workflow.

Backend DevelopmentConfigurationInstallation
0 likes · 12 min read
Master Tomcat: Install, Configure, and Integrate with Nginx on Linux
Top Architect
Top Architect
Dec 15, 2024 · Backend Development

Deep Dive into Spring Boot 2.7.10 Embedded Tomcat Configuration, Thread Management and Performance Testing

This article provides a comprehensive analysis of Spring Boot 2.7.10's embedded Tomcat 9.0.73 default settings, core parameters, internal thread architecture, configuration examples, performance testing with various concurrent connections, and includes detailed code snippets and diagrams, while also containing promotional material for AI services.

ConfigurationSpring BootTomcat
0 likes · 17 min read
Deep Dive into Spring Boot 2.7.10 Embedded Tomcat Configuration, Thread Management and Performance Testing
Code Ape Tech Column
Code Ape Tech Column
Dec 13, 2024 · Backend Development

Performance Tuning of a Java Spring Backend: From 50 TPS to Over 200 TPS

The article details a step‑by‑step performance investigation of a Java Spring backend that initially handled only 50 requests per second under load, covering slow SQL, excessive logging, thread‑pool misconfiguration, prototype‑scoped Redis beans, JVM memory settings, and the resulting optimizations that raised throughput to over 200 TPS.

Tomcatperformance
0 likes · 13 min read
Performance Tuning of a Java Spring Backend: From 50 TPS to Over 200 TPS
Top Architect
Top Architect
Dec 10, 2024 · Backend Development

Replacing Tomcat with Undertow in Spring Boot: Configuration, Features, and Performance Comparison

This article explains how to replace Spring Boot's default embedded Tomcat with the high‑performance Undertow server, provides step‑by‑step Maven dependency changes, outlines Undertow's advantages, and presents benchmark results showing superior throughput and lower memory usage for high‑concurrency applications.

JavaSpringBootTomcat
0 likes · 9 min read
Replacing Tomcat with Undertow in Spring Boot: Configuration, Features, and Performance Comparison
macrozheng
macrozheng
Oct 25, 2024 · Fundamentals

Why and How Java Breaks the Parent Delegation Model: Real-World Scenarios

This article explains the purpose of Java's parent‑delegation class‑loading mechanism, describes its three built‑in loaders, shows how custom loaders can override it, and explores common situations—such as JNDI, JDBC, Tomcat, and OSGi—where developers intentionally break the delegation for flexibility and modularity.

Custom ClassLoaderJDBCJNDI
0 likes · 11 min read
Why and How Java Breaks the Parent Delegation Model: Real-World Scenarios
DaTaobao Tech
DaTaobao Tech
Sep 23, 2024 · Backend Development

Root Cause Analysis of Missing Logs after Tomcat 7→8 Upgrade

After upgrading from Tomcat 7 to Tomcat 8, the application’s mixed log4j‑1.4 and logback‑1.2.3 dependencies caused the SLF4J binder to be loaded nondeterministically, so Tomcat 8 sometimes selected the Log4j binder without a configuration file, resulting in completely missing log output; removing the conflicting jars or enforcing a deterministic class‑loading order restored logging.

DebuggingJavaTomcat
0 likes · 19 min read
Root Cause Analysis of Missing Logs after Tomcat 7→8 Upgrade
Selected Java Interview Questions
Selected Java Interview Questions
Sep 10, 2024 · Backend Development

Graceful Shutdown in Spring Boot: Mechanisms, Code Samples, and Configuration

This article explains how Spring Boot handles graceful shutdown in Kubernetes, manual Actuator shutdown, SIGTERM handling, Tomcat graceful termination, and Logback log flushing, providing detailed code examples, configuration snippets, and the underlying shutdown hook mechanisms that ensure resources are released cleanly.

GracefulShutdownJavaKubernetes
0 likes · 18 min read
Graceful Shutdown in Spring Boot: Mechanisms, Code Samples, and Configuration
Java Tech Enthusiast
Java Tech Enthusiast
Sep 7, 2024 · Backend Development

Understanding Tomcat and Its Integration with Spring Boot

Apache Tomcat is the underlying servlet container and web server that Spring Boot automatically embeds via the spring‑boot‑starter‑web dependency, but junior developers often miss its core roles—managing servlet lifecycles, serving static resources, and compiling JSPs—so learning Tomcat (or swapping it for Jetty by adjusting Maven exclusions) clarifies what Spring Boot abstracts and enables flexible container choices.

JavaServletSpring Boot
0 likes · 6 min read
Understanding Tomcat and Its Integration with Spring Boot
Programmer DD
Programmer DD
Aug 29, 2024 · Backend Development

Tomcat vs Jetty vs Undertow: Which Spring Boot Embedded Server Performs Best?

This article builds a simple Spring Boot Greetings API, configures Maven profiles for Tomcat, Jetty, and Undertow, creates Docker images for each, runs load‑testing benchmarks across multiple concurrency levels, and analyzes startup time, CPU, memory, and response performance to determine the optimal embedded server.

BenchmarkDockerJetty
0 likes · 20 min read
Tomcat vs Jetty vs Undertow: Which Spring Boot Embedded Server Performs Best?
Top Architecture Tech Stack
Top Architecture Tech Stack
Aug 27, 2024 · Backend Development

Understanding Java's Parent Delegation Model for Class Loaders

The article explains Java's parent delegation model for class loaders, its benefits for stability and security, how to break it by customizing loadClass or using thread‑context class loaders, and illustrates common scenarios such as JNDI, JDBC and Tomcat's own class‑loader hierarchy.

JVMJavaParent Delegation
0 likes · 10 min read
Understanding Java's Parent Delegation Model for Class Loaders
Architecture Digest
Architecture Digest
Aug 18, 2024 · Backend Development

Zero‑Downtime SpringBoot Port Sharing: Design and Implementation

This article explains how to achieve seamless code updates for SpringBoot applications by allowing two processes to share the same port, detailing the underlying servlet container mechanics, the role of DispatcherServlet, and providing a complete Java implementation with step‑by‑step instructions and code samples.

BackendJavaPortSharing
0 likes · 8 min read
Zero‑Downtime SpringBoot Port Sharing: Design and Implementation
Architect
Architect
Aug 12, 2024 · Backend Development

How to Run Two SpringBoot Instances on the Same Port Seamlessly

When updating a SpringBoot application the old process must be stopped because the new one cannot bind to the same port, but by leveraging Tomcat's embedded container, ServletWebServerFactory, and dynamic port handling you can keep both processes alive and achieve zero‑downtime deployments.

Backend DevelopmentJavaPort Sharing
0 likes · 9 min read
How to Run Two SpringBoot Instances on the Same Port Seamlessly
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
Jul 28, 2024 · Backend Development

Master Spring Boot Web Server Configuration: Switch Servers, Ports, SSL, and More

This guide explains how to switch the embedded web server in Spring Boot 3.2.5, disable it, customize ports (including random and range ports), enable HTTP compression, configure SSL and HTTP/2, add servlets, filters, listeners, set up logging, and fine‑tune Tomcat and Undertow settings, all with practical code examples.

ConfigurationHTTP/2Jetty
0 likes · 14 min read
Master Spring Boot Web Server Configuration: Switch Servers, Ports, SSL, and More
Selected Java Interview Questions
Selected Java Interview Questions
Jul 26, 2024 · Backend Development

Zero‑Downtime SpringBoot Port Sharing: Running Two Instances on the Same Port

This article explains how to achieve seamless code updates for SpringBoot applications by allowing two instances to share the same port, detailing the underlying Tomcat embedding mechanism, DispatcherServlet handling, and providing a complete Java implementation with step‑by‑step instructions and test results.

BackendJavaPort Sharing
0 likes · 7 min read
Zero‑Downtime SpringBoot Port Sharing: Running Two Instances on the Same Port
Code Ape Tech Column
Code Ape Tech Column
Jul 23, 2024 · Backend Development

Zero‑Downtime SpringBoot Port Sharing: Design, Implementation, and Testing

This article explains how to enable two SpringBoot processes to share the same port for seamless code updates, covering the underlying servlet container mechanics, the required initialization flow, and providing a complete Java implementation with a demo that achieves near‑zero downtime during deployment.

Port SharingTomcatZero Downtime
0 likes · 9 min read
Zero‑Downtime SpringBoot Port Sharing: Design, Implementation, and Testing
Top Architect
Top Architect
Jul 9, 2024 · Backend Development

Replacing Tomcat with Undertow in Spring Boot: Configuration, Performance Comparison, and Benefits

This article explains how to replace Spring Boot's default embedded Tomcat with the high‑performance Undertow server, detailing Undertow's features, providing Maven dependency changes, showing configuration steps, and presenting benchmark results that compare QPS and memory usage, concluding that Undertow is preferable for high‑concurrency Java backend applications.

JavaSpringBootTomcat
0 likes · 8 min read
Replacing Tomcat with Undertow in Spring Boot: Configuration, Performance Comparison, and Benefits
Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
Jul 7, 2024 · Backend Development

Why Using Nginx with Tomcat Is Essential: HTTP Flow, DNS Limits, Health Checks, and Configuration Examples

The article explains why deploying only Tomcat without Nginx is impractical due to DNS IP limits, scaling costs, lack of health checks, and static file handling, and demonstrates how Nginx provides load balancing, failover, virtual hosting, and reverse‑proxy capabilities with concrete configuration examples.

Backend DevelopmentTomcatload balancing
0 likes · 12 min read
Why Using Nginx with Tomcat Is Essential: HTTP Flow, DNS Limits, Health Checks, and Configuration Examples
Top Architect
Top Architect
Jun 24, 2024 · Backend Development

Understanding Tomcat Configuration and Thread Management in Spring Boot 2.7.10

This article explains the default Tomcat settings bundled with Spring Boot 2.7.10, details core parameters such as accept‑count, max‑connections, thread pool sizes, and timeouts, describes the internal Acceptor and Poller threads, provides configuration examples and testing results, and includes reference links.

JavaSpring BootThreadPool
0 likes · 18 min read
Understanding Tomcat Configuration and Thread Management in Spring Boot 2.7.10
Su San Talks Tech
Su San Talks Tech
Jun 24, 2024 · Fundamentals

How to Break Java’s Parent Delegation Mechanism and Why It Matters

This article explains the purpose of Java's parent delegation class‑loader mechanism, describes its three built‑in loaders, and details common scenarios—such as JNDI, JDBC, Tomcat, and OSGi—where developers intentionally break the delegation to achieve flexibility and isolation.

Custom ClassLoaderJDBCJava
0 likes · 10 min read
How to Break Java’s Parent Delegation Mechanism and Why It Matters
Huolala Tech
Huolala Tech
Jun 20, 2024 · Backend Development

Why Our Core Service Crashed: Tomcat Thread Pool Bottlenecks & Custom Executor Pitfalls

On October 27, 2023, a sudden surge in request volume and downstream latency caused the bfe‑customer‑application‑query‑svc to exhaust its Tomcat thread pool, triggering health‑check failures and pod restarts; a deep dive revealed that an ill‑designed custom executor and unchecked thread‑waiting calls created a bottleneck that amplified the outage.

ExecutorIncidentAnalysisJava
0 likes · 36 min read
Why Our Core Service Crashed: Tomcat Thread Pool Bottlenecks & Custom Executor Pitfalls
macrozheng
macrozheng
Jun 13, 2024 · Backend Development

Why You Can’t Rely on Tomcat Alone: The Case for Nginx in Scalable Web Services

The article explains why deploying only Tomcat without Nginx leads to scaling, cost, and reliability problems, and demonstrates how Nginx’s health‑check, failover, and virtual‑host features complement Tomcat to build a robust, production‑grade web architecture.

Backend DevelopmentTomcatload balancing
0 likes · 11 min read
Why You Can’t Rely on Tomcat Alone: The Case for Nginx in Scalable Web Services
Architect
Architect
May 22, 2024 · Backend Development

Replacing Tomcat with Undertow in Spring Boot: Performance and Memory Benefits

This article explains how to replace the default embedded Tomcat container in Spring Boot with Undertow, outlines the configuration steps, compares their performance and memory usage through benchmark results, and concludes that Undertow offers superior throughput for high‑concurrency Java web applications.

BackendJavaTomcat
0 likes · 5 min read
Replacing Tomcat with Undertow in Spring Boot: Performance and Memory Benefits
Open Source Linux
Open Source Linux
May 21, 2024 · Operations

Set Up CentOS 7 VM, Configure IP, Install JDK, MySQL, Tomcat & Auto-Start

This guide walks through importing a CentOS 7 virtual machine in VMware, configuring network settings (dynamic or static IP), resolving common issues, then installing and configuring JDK 1.8, MySQL 5.7, and Tomcat 8.5, and finally creating systemd services for automatic startup of Java applications.

CentOSJDKNetwork Configuration
0 likes · 14 min read
Set Up CentOS 7 VM, Configure IP, Install JDK, MySQL, Tomcat & Auto-Start
Spring Full-Stack Practical Cases
Spring Full-Stack Practical Cases
May 16, 2024 · Backend Development

Master Spring Boot 3.2.5: Maven Property Expansion & Advanced Config

This guide demonstrates how to leverage Maven resource filtering for automatic property expansion in Spring Boot 3.2.5, configure externalized settings via spring.main and system properties, customize configuration file locations, activate profiles, set parent containers, modify DispatcherServlet paths, enable Tomcat access logs, MBean registry, and generate build and Git metadata.

ConfigurationExternalized ConfigSpring Boot
0 likes · 9 min read
Master Spring Boot 3.2.5: Maven Property Expansion & Advanced Config
Java Architect Essentials
Java Architect Essentials
Apr 6, 2024 · Backend Development

Comparing Tomcat and Undertow in SpringBoot: Configuration, Performance, and Memory Usage

This article explains how SpringBoot defaults to an embedded Tomcat container, shows how to replace it with Undertow by adding the appropriate dependency, and compares the two servers' performance and memory consumption through benchmark results, concluding that Undertow is preferable for high‑concurrency Java backend applications.

TomcatWeb Containerundertow
0 likes · 5 min read
Comparing Tomcat and Undertow in SpringBoot: Configuration, Performance, and Memory Usage
MaGe Linux Operations
MaGe Linux Operations
Apr 6, 2024 · Backend Development

Boost Tomcat Performance: Essential JVM and Connector Tuning Tips

This guide explains why Tomcat’s default settings are unsuitable for production, then walks through JVM memory tuning, thread‑pool adjustments, connector optimizations, and security hardening to dramatically improve stability and throughput on various server configurations.

JavaTomcatjvm-tuning
0 likes · 12 min read
Boost Tomcat Performance: Essential JVM and Connector Tuning Tips
MaGe Linux Operations
MaGe Linux Operations
Mar 31, 2024 · Backend Development

Mastering Tomcat Performance: Key Tuning Parameters and Best Practices

This article explains how to optimize Tomcat by adjusting server.xml parameters such as maxThreads, acceptCount, maxConnections, and connectionTimeout, while also covering related Linux kernel settings, file descriptor limits, and JVM options to achieve balanced performance for both CPU‑bound and I/O‑bound workloads.

JVMLinux kernelTomcat
0 likes · 14 min read
Mastering Tomcat Performance: Key Tuning Parameters and Best Practices
Architect
Architect
Feb 25, 2024 · Backend Development

Unlocking Tomcat: A Deep Dive into Its Architecture and Design Patterns

This article dissects Tomcat’s mature architecture, explaining its macro and micro design, startup flow, connector and container components, lifecycle management, class‑loader hierarchy, hot‑reload mechanism, and how developers can apply the demonstrated patterns such as composite, observer, template method, and strategy in real projects.

Class LoaderDesign PatternsJava
0 likes · 43 min read
Unlocking Tomcat: A Deep Dive into Its Architecture and Design Patterns
macrozheng
macrozheng
Feb 22, 2024 · Backend Development

How Many Requests Can a Default SpringBoot App Handle? Inside Tomcat & Undertow Thread Pools

This article walks through an interview question about the maximum concurrent requests a default SpringBoot application can process, builds a minimal demo, examines Tomcat and Undertow thread‑pool configurations, and shows how container defaults and parameters like core size, max size, and queue length determine the real limit.

JavaSpringBootThreadPool
0 likes · 19 min read
How Many Requests Can a Default SpringBoot App Handle? Inside Tomcat & Undertow Thread Pools
Top Architect
Top Architect
Jan 30, 2024 · Backend Development

Advanced Backend Asynchronous Execution and Configuration Techniques in Spring Boot

This article explains multiple backend optimization methods for Spring Boot, including asynchronous execution with @Async and CompletableFuture, increasing embedded Tomcat connection limits, using @ComponentScan, switching to Undertow, applying BufferedWriter, employing DeferredResult, and intercepting async calls with AsyncHandlerInterceptor, accompanied by concrete code examples.

AsynchronousCompletableFutureJava
0 likes · 12 min read
Advanced Backend Asynchronous Execution and Configuration Techniques in Spring Boot