正如我发现的,String中的控制器是单例Are Spring MVC Controllers Singletons?
问题是,Spring如何处理多个长时间消耗的请求到同一个映射?例如,当我们想要返回需要长时间计算或连接到其他服务器的模型时,有很多用户向同一个URL发送请求?
我认为异步线程不是解决方案,因为方法需要在下一个请求保持之前结束?或者不..?
答案 0 :(得分:0)
使用线程池(容器管理)处理请求,因此每个请求都有一个独立的上下文,无论Controller是否为Singleton都无关紧要。
一个重要的事情是,Singleton实例不得在请求之间共享状态以避免意外行为或竞争条件。
线程池容量将定义服务器在同步模型中可以处理的请求数。
如果你想要一种异步方法,你可以使用许多选项,如: