Table of Contents
Tomcat container in SpringBoot
SpringBoot settings Undertow
Comparison of the pros and cons of Tomcat and Undertow
Home Java javaTutorial What is the reason for prohibiting SpringBoot from using the Tomcat container in the project?

What is the reason for prohibiting SpringBoot from using the Tomcat container in the project?

May 12, 2023 pm 03:34 PM
tomcat springboot

Tomcat container in SpringBoot

SpringBoot can be said to be the most popular Java Web framework at present. It frees developers from cumbersome xml and allows developers to create a complete web service in a few minutes, greatly improving developers' work efficiency. Web container technology is an essential component of Web projects, because any Web project must rely on container technology to run.

In the SpringBoot framework, the one we use most is Tomcat, which is the default container technology of SpringBoot and is an embedded Tomcat.

SpringBoot settings Undertow

Java programmers should be very familiar with Tomcat technology. It is the most commonly used container technology for Web applications. Our earliest developed projects were basically deployed and run under Tomcat. So in addition to Tomcat containers, what other container technologies can we use in SpringBoot? That's right, it's the Undertow container technology in the title. SrpingBoot has completely inherited Undertow technology. We only need to introduce Undertow's dependencies, as shown in the figure below.

What is the reason for prohibiting SpringBoot from using the Tomcat container in the project?

What is the reason for prohibiting SpringBoot from using the Tomcat container in the project?

After configuration, we started the application and found that the container had been replaced with Undertow. So why do we need to replace Tomcat with Undertow technology?

Comparison of the pros and cons of Tomcat and Undertow

Tomcat is a lightweight Servlet container under the Apache Foundation, supporting Servlets and JSP. Tomcat has unique functions of web server, including Tomcat management and control platform, security bureau management and Tomcat valve. Tomcat itself contains an HTTP server, so it can also be regarded as a separate Web server. However, Tomcat and Apache HTTP server are not the same thing. Apache HTTP server is an HTTP web server implemented in C language. Tomcat is completely free and loved by developers.

Undertow is an open source product of Red Hat. It is developed entirely in Java language. It is a flexible and high-performance web server that supports blocking IO and non-blocking IO. Since Undertow is developed in Java language, it can be directly embedded into Java projects for use. At the same time, Undertow fully supports Servlet and Web Socket, and performs very well in high concurrency situations.

What is the reason for prohibiting SpringBoot from using the Tomcat container in the project?

We stress tested Tomcat and Undertow under the same machine configuration, and the test results obtained are as follows: QPS test result comparison: Tomcat

What is the reason for prohibiting SpringBoot from using the Tomcat container in the project?

Undertow

What is the reason for prohibiting SpringBoot from using the Tomcat container in the project?

Memory usage comparison:

Tomcat

What is the reason for prohibiting SpringBoot from using the Tomcat container in the project?

Undertow

What is the reason for prohibiting SpringBoot from using the Tomcat container in the project?

Through testing, it was found that Tomcat is relatively weak in high-concurrency systems. Under the same machine configuration and simulating an equal number of requests, Undertow is optimal in terms of performance and memory usage. And the new version of Undertow uses persistent connections by default, which will further improve its concurrent throughput capabilities. Therefore, if it is a highly concurrent business system, Undertow is the best choice.

The above is the detailed content of What is the reason for prohibiting SpringBoot from using the Tomcat container in the project?. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: How To Unlock Everything In MyRise
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How to deploy jar project in tomcat How to deploy jar project in tomcat Apr 21, 2024 am 07:27 AM

To deploy a JAR project to Tomcat, follow these steps: Download and unzip Tomcat. Configure the server.xml file, set the port and project deployment path. Copies the JAR file to the specified deployment path. Start Tomcat. Access the deployed project using the provided URL.

How to allow external network access to tomcat server How to allow external network access to tomcat server Apr 21, 2024 am 07:22 AM

To allow the Tomcat server to access the external network, you need to: modify the Tomcat configuration file to allow external connections. Add a firewall rule to allow access to the Tomcat server port. Create a DNS record pointing the domain name to the Tomcat server public IP. Optional: Use a reverse proxy to improve security and performance. Optional: Set up HTTPS for increased security.

Where is the tomcat installation directory? Where is the tomcat installation directory? Apr 21, 2024 am 07:48 AM

Tomcat installation directory: Default path: Windows: C:\Program Files\Apache Software Foundation\Tomcat 9.0macOS:/Library/Tomcat/Tomcat 9.0Linux:/opt/tomcat/tomcat9 Custom path: You can specify it during installation. Find the installation directory: use whereis or locate command.

How to deploy multiple projects in tomcat How to deploy multiple projects in tomcat Apr 21, 2024 am 09:33 AM

To deploy multiple projects through Tomcat, you need to create a webapp directory for each project and then: Automatic deployment: Place the webapp directory in Tomcat's webapps directory. Manual deployment: Manually deploy the project in Tomcat's manager application. Once the project is deployed, it can be accessed by its deployment name, for example: http://localhost:8080/project1.

How to check the number of concurrent connections in tomcat How to check the number of concurrent connections in tomcat Apr 21, 2024 am 08:12 AM

How to check the number of concurrent Tomcat connections: Visit the Tomcat Manager page (http://localhost:8080/manager/html) and enter your user name and password. Click Status->Sessions in the left navigation bar to see the number of concurrent connections at the top of the page.

Where is the root directory of the tomcat website? Where is the root directory of the tomcat website? Apr 21, 2024 am 09:27 AM

The Tomcat website root directory is located in Tomcat's webapps subdirectory and is used to store web application files, static resources, and the WEB-INF directory; it can be found by looking for the docBase attribute in the Tomcat configuration file.

How to check the port number of tomcat How to check the port number of tomcat Apr 21, 2024 am 08:00 AM

The Tomcat port number can be viewed by checking the port attribute of the <Connector> element in the server.xml file. Visit the Tomcat management interface (http://localhost:8080/manager/html) and view the "Status" tab. Run "catalina.sh version" from the command line and look at the "Port:" line.

How to run two projects with different port numbers in tomcat How to run two projects with different port numbers in tomcat Apr 21, 2024 am 09:00 AM

Running projects with different port numbers on the Tomcat server requires the following steps: Modify the server.xml file and add a Connector element to define the port number. Add a Context element to define the application associated with the port number. Create a WAR file and deploy it to the corresponding directory (webapps or webapps/ROOT). Restart Tomcat to apply changes.

See all articles