Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring 范围=要求是否适合高负载弹簧应用?_Spring_Spring Mvc_Scope_Named Scope - Fatal编程技术网

Spring 范围=要求是否适合高负载弹簧应用?

Spring 范围=要求是否适合高负载弹簧应用?,spring,spring-mvc,scope,named-scope,Spring,Spring Mvc,Scope,Named Scope,当单例bean被注入到请求范围的bean时,这是一种常见的做法吗? 例如,类似这样的内容: @Scope(value="request", proxyMode=ScopedProxyMode.INTERFACES) public class CurrentUser { @Resource private UserRepository userRepository; ... } public class ApplicationController { @Auto

当单例bean被注入到请求范围的bean时,这是一种常见的做法吗? 例如,类似这样的内容:

@Scope(value="request", proxyMode=ScopedProxyMode.INTERFACES)
public class CurrentUser {
    @Resource
    private UserRepository userRepository;
    ...
}

public class ApplicationController {

    @Autowired
    private CurrentUser currentUser;
    ...
}
内存管理的开销是否可能?这个实现是安全的吗?
谢谢

本质上,将要发生的是,对于每个活动http请求,都会有一个
CurrentUser
实例。实例在Spring创建的代理之后进行管理,实例本身作为http请求属性进行维护,并且生命周期与该请求相关联

我想说,从实例化和自动连接每个
CurrentUser
请求实例的工作量来看,这将是非常昂贵的。它不应该在内存方面花费太多,因为实例的生存期很短,并且作用域为请求。关于实例是否是线程安全的,是的


不过有一个bug,proxyMode必须是
ScopedProxyMode.TARGET\u CLASS
,因为您的
CurrentUser
类没有实现任何接口。

谢谢!关于proxyMode=ScopedProxyMode.INTERFACES-我知道这一点,谢谢。我缩短了继承细节。