gpt4 book ai didi

spring-boot - 如何在多战 Tomcat 上共享 Hazelcast 缓存

转载 作者:行者123 更新时间:2023-11-28 22:16:09 25 4
gpt4 key购买 nike

我们有多个 Tomcat,每个都有多个 .war 文件(= Spring Boot 应用程序)部署在其中。我们现在需要在 tomcat1 上的 app1 和 tomcat2 上的 app1 之间进行一些分布式缓存。 tomcat1 上的 app2(和 tomcat2 上的 app2)不能看到其他已部署应用程序的 Hazelcast 缓存,这一点很重要。

下图显示了这种情况:

         Tomcat 1                               Tomcat 2
+-----------------------------------+ +-----------------------------------+
| | | |
| app1.war app2.war | | app1.war app2.war |
| +----------+ +----------+ | | +----------+ +----------+ |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | | | | | | | | | | |
| +----+-----+ +----+-----+ | | +----+-----+ +-----+----+ |
| | | | | ^ ^ |
+-----------------------------------+ +-----------------------------------+
| | | |
| | | |
| | | |
| | | |
+--------------------------------------+ |
Shared cache via Hazelcast | |
| |
+---------------------------------------+
Shared cache via Hazelcast

Hazelcast 可以做到这一点吗?如果是这样,怎么办?现在我只找到通过 Hazelcast 谈论共享网络 session 的解决方案。但这似乎不是我的解决方案,还是我错了?

最佳答案

如果您的应用程序必须严格隔离,那么您可能需要使用不同的 cluster groups .集群组使不同的集群可以在同一网络中共存,同时彼此之间完全无法访问(假设配置正确)。

但是,如果您只需要将应用程序数据分开,那么您只需确保 app1 实例使用名称不与 app2 缓存冲突的缓存名字。这是最简单的实现。

如果您正在部署一种 Multi-Tenancy 环境,其中两组应用程序之间存在安全边界,那么选择集群组选项会更好,因为您可以使用密码保护集群,并且应用程序将使用不同的端口进行通信在这些组中彼此。

关于spring-boot - 如何在多战 Tomcat 上共享 Hazelcast 缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50511049/

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