【问题标题】:Velocity clustering issue速度聚类问题
【发布时间】:2012-11-23 19:57:47
【问题描述】:

在负载均衡器下运行多个 tomcat 的集群环境中,我们遇到了一个问题,我们认为这可能是速度引擎,当环境从简单节点转移到集群时需要某种配置。

这就是我遇到的方式,如果我按照以下步骤进行操作,就可以重现。步骤是;例如,在集群的开发环境中,开发人员有两个不同的(虚拟)服务器,每个服务器 Tomcat 与另一个发送序列化会话进行通信,另一个在它的末端反序列化。这样,如果一个服务器关闭(或未响应),两个服务器都具有相同的会话,另一台服务器将处理该请求。用户会话持续和任何类型的服务器故障都不会导致用户烦恼。

假设在浏览器中浏览应用程序时,您正在观察每个服务器的“catalina.out”日志。将有一台服务器将处理您的所有请求,而另一台服务器只是同步会话(处于待机状态)。您杀死了服务器的 tomcat,所有请求都在其中提供服务,现在备用服务器已准备好为您提供服务。您浏览到一个页面,您可以在其中搜索记录,该页面最初显示为空。有一次,您点击搜索,您会看到 3 条记录,但每一行列第一列都有一些奇怪的东西:

Names                                      |  Last Logged in Time
_________________________________________________________________________________
 #dotPaddingWithoutTitle(Amir Ali, 60)     |  10/11/2012 6:00 PM
 #dotPaddingWithoutTitle(Saif Uddin, 60)   |  10/11/2012 6:00 PM
 #dotPaddingWithoutTitle(Reemsha Ayaz, 60) |  10/11/2012 6:00 PM

#dotPaddingWithoutTitle 是一个速度宏;似乎无法在这种情况下呈现它,但我不明白为什么整个视图(页眉、页脚、导航、工具栏等)能够呈现但不是这个。

如果您对此有任何想法,请提供帮助。谢谢。

【问题讨论】:

  • 您需要提供更多详细信息。发布速度宏肯定会有所帮助。如果这些 Velocity 宏包含服务器端对象,说明什么也有用。
  • @mindas 此宏中没有服务器端对象,它所做的只是将标题限制为 60 个字符,并在标题的每一侧添加 1 个填充
  • 我实际上不知道,但发布 all 速度配置可能会有所帮助。特别是在哪里以及如何读取 velocimacros。
  • @sinuhepop 你能告诉我当你所有的宏都驻留在 /WEB-INF/classes/vm/sn-ps/macroutils.vm 中时如何使用 spring 在 velocity.properties 中配置 velocimacros
  • 我发现 Spring 的 VelocityConfigurer 不完整,所以我一直使用自己的 bean factory。但我认为你必须使用它的 velocityProperties 字段,如 velocity.properties 文件。

标签: spring jakarta-ee tomcat velocity session-replication


【解决方案1】:

*尝试升级velocity框架(velocity-1.7), 我希望它能解决你的问题... 更多详情可以找到here *

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-11
    • 2011-05-15
    • 2011-11-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多