如何通过会话复制find集群Tomcat的限制

我正在实验性地开发一个Tomcat集群,因为它可能需要我们的生产环境。 它必须是可扩展的,高可用性和支持多个并发用户。 正因为如此,我做了这样一个testing环境:

HaProxy / \ / \ Tomcat 1 (7.0) Tomcat 2(7.0) Redis 1 Redis 2 

Tomcat“在HaProxy上进行了负载平衡,并通过Redis复制了他们的会话。 每个Redis都通过哨点连接彼此。 最后,每个Tomcat和Redis捆绑包都是一台机器。 例如,Tomcat 1和Redis 1在同一台服务器上。

在这个实验实验结束时,我有一些问题,

  1. 我怎样才能推动这个实验室的限制? 我试图在tomcat上的基本应用程序,但我需要知道此群集的限制,以发现潜在的故障转移点。
  2. 这个实验室的潜在弱点是什么? 相同问题的最佳做法是什么?
  3. 使用Web Logic或Wildfly代替Tomcat或使用Tomcat的默认DeltaManager或BackupManager有什么优点或缺点?
  4. 我想尝试复制节点的记忆彼此。 可能吗? 如果可能的话,我想知道你的build议:)

提前致谢。

您需要关注您的应用程序testing,而不是Tomcat(或任何应用程序服务器)testing。

发现被测系统突发点的过程称为压力testing ,其思想如下:

  1. 使用负载testing工具会创build一个工作负载,它将代表正常的应用程序使用情况
  2. 设置Tomcat运行的JVM和底层操作系统的基线运行状况指标的监视。
  3. 从1个虚拟用户开始,逐步增加负载,同时关注系统资源消耗。
  4. 当任何系统资源消耗指标(CPU,RAM,networking/磁盘IO)将超过(即最大可用容量的90%或系统将开始交换或JVM将经常执行垃圾收集或应用程序响应时间将超过可接受的阈值级别或错误将会开始发生 – 这就是所谓的"bottleneck" ,这就是您的应用程序能够提供多less并发用户(或每秒请求)。