gpt4 book ai didi

java - 由于负载平衡,全局变量未更新

转载 作者:行者123 更新时间:2023-11-30 08:12:46 26 4
gpt4 key购买 nike

有两台服务器运行 Web 服务,这些服务器使用 HAProxy 进行负载平衡。

Web 服务执行发布并使用特定值更新全局变量,在同一服务器上运行的另一个应用程序将读取该全局值并进行一些处理。

我的问题是当我使用 web 服务将值设置为 gloabl 变量时;由于负载平衡器,只有一台服务器得到更新。因此,应用程序有时会读取全局值,当请求到达第二个服务器时,它不会读取它,因为该服务器中的全局变量未更新。

谁能告诉我如何处理这种情况。 Web 服务和应用程序都是基于 Java 的。

最佳答案

首先,依赖全局数据可能不是一个好主意。更好的解决方案是将数据保存在一些公共(public)存储中,例如数据库或(共享)Redis 缓存。其次,如有必要,您可以在负载均衡器上使用粘性 session ,以便后续请求始终返回到同一个 Web 服务器,只要它可用。后一种资格是共享缓存或数据库解决方案应该成为首选的原因之一 - 服务器可能会在用户 session 期间因维护或其他问题而停机。

关于java - 由于负载平衡,全局变量未更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30277315/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com