java - Springboot如何管理分布式系统中的bean?
问题描述
可以说我在 Spring Boot 中有一个应用程序。该应用程序的多个实例将在分布式系统中运行,以处理来自不同用户的大量请求。Spring 将在应用程序上下文中创建/管理其 bean。有几个应用程序实例将运行应用程序上下文。如果我们在这个应用程序前面有一个负载均衡器,它在每个实例上分配请求,那么 spring 将如何管理 bean。
解决方案
在您的应用程序实例前面单独使用负载均衡器,spring boot 应用程序将不会相互感知。实例之间不会有任何 bean 管理,每个实例都将维护自己的应用程序上下文和托管 bean。您可以将实例显式连接在一起以使用相同的数据库作为数据源或持久会话 (server.session.persistent=true),这样当负载均衡器路由到另一个节点时会话不会丢失。
推荐阅读
- sql-server - 使用 Where 子句从一个表插入另一个表
- c# - 在 Unity 中获取 WASD 键以跟随相机旋转
- ios - SwiftUI 2 视图中的模型
- sql - 根据查询结果派生值并对数据进行分组
- java - 如何在 Spring Cloud Stream App 中反序列化 MessagePack
- python-3.x - 反转 MultiLabelBinarizer 以在列中创建列表
- c# - Linq:使用基于字符串的let语句对数据进行分组
- c# - 在静态方法中读取 cookie [ASP MVC]
- python - 比较列表中的元素?(Python)
- python - 尝试在 python 中使用 for 和 while 循环解决相同问题的不同结果