Spring + Thread安全单身人士

时间:2009-10-23 08:33:46

标签: spring

我正在开发一个使用MULE和Spring的项目。在上下文中,我们创建了提供服务的bean。所有bean本质上都是线程安全的单例。这是一种受欢迎/推荐的写作服务方式吗?

3 个答案:

答案 0 :(得分:2)

默认情况下,spring中的bean将是一个单例,这是你描述的非常常见的场景。

答案 1 :(得分:0)

可能会出现性能问题。如果您有许多线程竞争相同的服务。 bean被定义为线程安全的,因此来自不同线程的访问将被有效地序列化。

答案 2 :(得分:0)

在我们的RESTFul服务中,我们在

上设置了入口点

@com.sun.jersey.spi.resource.PerRequest

基础和

@org.springframework.context.annotation.Scope("request")

可以提高吞吐量,但我们会监控以确保GC足够好,不会使应用程序膨胀。

Spring单例本身就是线程安全的,而且这是默认范围 - 当我们在所有网络应用程序中使用它们时,它表现得非常好。