SpringBoot面试题, SpringBoot 默认同时可以处理的最大连接数是多少?
SpringBoot面试题, SpringBoot 默认同时可以处理的最大连接数是多少?
QA
Step 1
Q:: SpringBoot 默认同时可以处理的最大连接数是多少?
A:: Spring Boot 默认使用 Tomcat 作为嵌入式服务器,Tomcat 默认最大连接数为 8192
。这是 Tomcat 处理的最大连接数,而不是线程数。最大连接数可以通过修改 server.tomcat.max-connections
属性来配置。
Step 2
Q:: 如何修改 SpringBoot 应用的最大连接数?
A:: 可以在 application.properties
或 application.yml
文件中通过 server.tomcat.max-connections
属性来配置最大连接数。例如,server.tomcat.max-connections=10000
将最大连接数设置为 10000
。
Step 3
Q:: SpringBoot 中的最大线程数和最大连接数有什么区别?
A:: 最大线程数指的是服务器在处理请求时可以同时使用的最大工作线程数,默认值通常为 200
,可以通过 server.tomcat.max-threads
来配置。最大连接数是指服务器能够同时接受的最大 TCP 连接数,两者是不同的概念,线程用于处理请求,而连接用于管理客户端连接。
Step 4
Q:: 如何查看当前 SpringBoot 应用的连接数和线程池使用情况?
A:: 可以通过 Spring Boot 的 Actuator 模块来监控应用的连接数和线程池使用情况。启用 management.endpoints.web.exposure.include=metrics
后,可以通过 /actuator/metrics
端点来查看相关信息。例如,/actuator/metrics/tomcat.threads.active
显示当前活动线程数,/actuator/metrics/tomcat.connections.current
显示当前连接数。