java - Spring @Service 与对象服务
问题描述
我有一个关于@Service
春天的问题,但我没有找到任何回应。
情况 :
我有一个@RestController
使用 spring的 web 应用程序
现在对于我的服务层,我在一些项目中看到了两种处理方式
@Service
在服务类和@Autowired
控制器类上(如果我们更改范围,则创建一个单例的 bean)创建一个像服务一样的对象
我的服务服务 = 新的我的服务()
所以我的问题是:
每次调用控制器时创建一个对象不会是内存问题吗?如果我创建一个负载测试(使用 Apache Jmeter)并发送 1000 个请求,它将为我的服务创建 1000 个对象,所以可能不是问题吗?
创建一个单例
@Service
对内存来说不是问题,但是例如 spring 如何在 1 秒内处理 1000 个请求。他会在某种队列上推送请求并一次执行一个吗?服务声明的最佳实践是什么,为什么?
提前感谢您的任何回复
解决方案
Spring Controller 使用 IOC 机制,例如创建 Singleton 对象的位置,例如您描述的@Service 示例,
Application Server 管理请求客户端,它使用线程池来处理请求并生成或使用相同的线程进行请求或响应,Spring 应用程序是它自己使用容器机制,其中使用 @Service 和 @Autowired 注释创建对象。
推荐阅读
- firebase - Firebase Node API v9 访问 functions.config() 和 functions.logger()?
- python-3.x - 如何键入多索引熊猫数据框 Python3.8+ 的提示?
- jenkins - Jenkins 中某些通道的 Slack 插件连接失败
- javascript - Three.js - 如何按调用/加载的顺序加载和存储模型?
- opengl - 如何测试 OpenGL 应用程序是否适用于某些特定的 OpenGL 版本?
- algorithm - 具有 3 个约束的变量消除
- powershell - 错误:不允许使用别名,因为别名已存在
- javascript - 如何在 React 中同时检索两个单元格的值
- excel - 如何计算费用excel - VBA
- python - 如何告诉python使用者等待客户端启动