simultaneous tomcat 集群,其中集群中的每个节点提供不同的数据

simultaneous tomcat cluster where each node in the cluster serves different data

通读 this article 我的理解是 Tomcat 集群包含 Tomcat 的多个 "nodes"(或实例)。但是,我的印象是用户只能看到这些节点之一提供的数据(即用户无法同时看到所有这些节点提供的数据)。这就是我的问题。

我需要用户同时看到所有节点服务的数据,因为每个节点包含不同的信息。

例如,

如果NodeA列出

/nodeA/file1.txt
/nodeA/file2.txt

NodeB列出

/nodeB/file3.txt
/nodeB/file4.txt

如文章所述,使用 Tomcat 聚类后,用户只会看到上述两个列表之一,而不会同时看到这两个列表。但我希望用户看到 4 个文件的完整列表(file1.txt、file2.txt、file3.txt 和 file4.txt)。

Tomcat 集群会为我实现这个吗?有没有办法配置集群来实现这个?

每个 HTTP 请求都由一个 Tomcat 节点处理。集群的目的有两个:首先,如果 Tomcat 个节点出现故障,您的网站就不会完全崩溃;其次,通过让多个节点处理请求来提高吞吐量。让 Tomcat 个节点 "talk amongst themselves" 来处理请求会损害这两个目的,因为请求处理速度会慢得多,并且如果节点出现故障,则无法正确回答请求。

需要在节点之间共享的数据需要从 Tomcat 中移出。对于您的示例,您可以使用像 NFS 这样的共享文件系统,每个节点读取该文件系统以获取完整的文件列表。如果您需要比 NFS 性能更好的东西,还有像 GlusterFS or Lustre 这样的集群文件系统。