当单个控制器收到许多请求时,Spring 如何处理线程安全?

Posted

技术标签:

【中文标题】当单个控制器收到许多请求时,Spring 如何处理线程安全?【英文标题】:How does Spring handle thread safety when a single controller gets many requests? 【发布时间】:2019-10-17 08:07:50 【问题描述】:

Spring 中的单个控制器通常有许多请求映射。许多请求可能同时命中属于一个控制器(意味着一个类)的 API。不会导致线程安全问题吗? Q1) Spring 控制器本质上是线程安全的吗?

我的回答:默认情况下,Spring 控制器是一个 Singleton bean。它是否本质上是线程安全的,取决于 Spring 如何实现单例模式。它可以是线程安全的或非线程安全的。对吗?

Q2) Spring 是否提供任何注解或配置来确保处理多个请求不会遇到线程安全问题? Q3) 确保线程安全是开发者自己的负担吗?

【问题讨论】:

【参考方案1】:

关于 Spring 如何实现单例模式的第一个问题 看这个链接:

How does the singleton Bean serve the concurrent request?

Spring 并发: How does Spring bean Handle concurrency

How does Spring MVC handle multiple users

【讨论】:

-您也可以尝试回答这个问题吗? ***.com/questions/56389404/…

以上是关于当单个控制器收到许多请求时,Spring 如何处理线程安全?的主要内容,如果未能解决你的问题,请参考以下文章

如何处理 Spring Boot、AngularJS 应用程序中的 CORS 错误?

[IB]Integration Broker 是如何处理传入的请求(Part 2)

如何处理spring boot 2中@Requestbody中的对象抛出的异常

JWT:当用户打开新标签时如何处理 GET 请求?

JWT:当用户打开新标签时如何处理 GET 请求?

如何处理Rails加入表关系删除?