Tomcat集群仅配置为负载均衡器。没有会话复制。因此,如果运行用户会话的Tomcat节点死了,那么会话就会丢失。
我们确实需要在该集群上定期运行服务。显然,它不能同时在两台服务器上运行,但同时必须确保在一定时间间隔后至少在一台服务器上运行。
在这种情况下,什么是优雅的解决方案?
发布于 2014-06-10 18:34:35
使用支持clustering的Quartz。您只需在应用程序中定义集群属性,并创建一些表来将作业配置存储在数据库中。
当集群中的节点启动时,它将调用数据库,声明它是活动的。
当作业必须定期或异常执行时,集群中只有一个节点会开始执行该作业。如果作业失败或节点崩溃,可以重新启动。
https://stackoverflow.com/questions/23728867
复制相似问题