对于Tomcat线程池的一些理解
单台tomcat的最大连接数和最大线程数是有限的。当前端发送来一个请求,后端接口没有使用异步线程,那个这个请求应该为同步请求,此时Tomcat从自己的线程池里取出一个线程,用以从Tomcat到Spring的Controller,Service,Dao。
为了更加直观的理解这句话,我们开始一个test。
我们先做一个开始测试之前准备工作。首先我们把Springboot内置的Tomcat的最大线程数设置为3,然后我们写一个测试接口,用以查看当前是哪条线程在工作。
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class TestController {
@GetMapping("hello")
public String hello() throws InterruptedException {
System.out.println("主线程开始---------->"+Thread.currentThread().getName());