我们的 Web 应用程序即将投入生产。我们将为这个 WAR 使用负载平衡以获得更多冗余。
我是一名 Java 开发人员,如果我的负载平衡问题很基础,请原谅。
现在 WAR 部署在两台 Linux 服务器上(服务器 A
和 服务器 B
)。
这两台服务器都安装了具有相似目录结构的TomCat。
WAR 将使用在 tomcat/bin
目录下定义的属性文件,并且此属性值对于这两个服务器是不同的。
这两个服务器有不同的 IP 地址。
请让我知道在这种情况下负载平衡是否会出现任何问题?
如果您不希望用户的 session 在两台服务器上持续存在,这应该不是问题。例如,如果给定用户登录并进入 Web 应用程序 session ,突然该服务器出现故障,您会希望负载均衡器透明地将用户转移到另一台服务器。默认情况下,这会导致在其他服务器的 tomcat 实例上创建一个新 session ,从而使用户丢失他们的 session 数据(如果没有持久保存在数据库中),必须重新登录等。
通常,您可以配置应用程序服务器和负载平衡器以启用粘性 session ,以便可以在整个场中维护单个 session 。这种设置通常更复杂。因此,如果您不需要让 session 跨两个实例进行,您应该没问题。