SpringBoot单页应用程序并发

戴维·琼斯

我已经复制了一个示例Spring Boot SPA。我想了解,如果多个人通过URL使用网页会发生什么。Java是否为每个调用创建Web应用程序的实例?内存资源不是共享的,对,也就是说,如果附加了一个列表对象,每个用户都会看到自己的列表吗?

永远学习

spring-boot bean的默认范围是singleton假设您的bean不在管理状态,那么您可以使用默认行为:

https://docs.spring.io/spring/docs/3.0.0.M3/reference/html/ch04s04.html

4.4.1单例范围

当一个bean是单例时,将仅管理该bean的一个共享实例,并且对所有具有与该bean定义匹配的id或id的bean的请求都将导致该特定的bean实例由Spring容器返回。

换句话说,当您定义一个bean定义并且其作用域为单例时,Spring IoC容器将为该bean定义定义的对象创建一个实例。该单个实例将存储在此类单例bean的缓存中,并且对该命名bean的所有后续请求和引用将导致返回缓存的对象。

现在,如果您使用的是有状态的bean,并且希望每个请求都使用一个新bean,则可以将该bean范围定义prototype

4.4.2原型范围

Bean部署的非单一原型范围会在每次对该特定Bean发出请求时(即,将其注入另一个Bean或通过编程性getBean()方法请求)创建一个新的Bean实例。调用容器)。根据经验,应将原型作用域用于所有有状态的bean,而单例作用域应用于无状态的bean。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章