gpt4 book ai didi

java - 具有共享对象的 Tomcat 6 集群

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:29:10 26 4
gpt4 key购买 nike

我们有一个大型的 tomcat 服务器集群,我正试图找到一种有效的方法来在所有服务器之间共享计数。此计数是购买的“小部件”的数量,需要针对每个页面 View 进行检查。任何服务器都可以完成销售并增加该计数,此时新值应该可供所有集群成员使用。

我们不想使用数据库中的计数,因为在整个集群的更新之间会有很多页面浏览,而且似乎没有必要为每个页面浏览对数据库进行获取操作。

我们有一个广泛的 memcached 集群,我们可以在其中存储值,在每个页面 View 中获取它,任何更新该值的人都会将新值设置到集群中。这又显得很浪费,因为每个页面 View 都会获取缓存。

我想做的是在每台服务器上都有一个内存中的值,并通过多播(或类似机制)消息告诉所有服务器它们刚刚递增,新数字是 X。这似乎是最多的高效,因为仅在进行更新时才执行操作,而不是为每个页面 View 都执行操作。

您在申请中是如何处理这个问题的?我是不是想多了……我们应该把它放在 memcached 中吗?

谢谢!

最佳答案

两者都是JBossCacheEhCache可以在 UDP 多播模式下运行,跨多个虚拟机复制内存缓存。与 memcached 不同,它们在 VM 内部运行,因此“缓存获取”本质上是一个免费操作。它们也是纯 Java,因此无需维护单独的缓存系统。

JBossCache 还提供事务和同步/异步操作,所以如果您对这些感兴趣,我会选择它而不是 EHCache。

关于java - 具有共享对象的 Tomcat 6 集群,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2188474/

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