没有重新启动tomcat,JCS缓存没有获得更新值

时间:2017-04-28 10:07:58

标签: java tomcat jvm jcs

我在我的应用程序中使用JCS缓存。我正在从Java Application(Main Method)更新jcs缓存数据。并使用另一个tomcat应用程序(war)访问它。我的问题是我没有获得tomcat应用程序的更新缓存数据。只有当重新启动tomcat时,我才能获得最新的缓存tomcat数据..

如何在不重新启动tomcat的情况下获取最新的缓存数据?

2 个答案:

答案 0 :(得分:0)

你在做什么对我来说不是很清楚。 如何在两个应用程序之间共享缓存?到目前为止,看起来您正在使用两个不同的缓存实例,每个应用程序一个。如果确实如此,如果您在内存缓存中使用,则不能指望一个应用程序中的更新显示在第二个应用程序中。

答案 1 :(得分:0)

我不是一个使用JCS的专家,但我不认为磁盘缓存的设计能够在不同的应用程序之间共享缓存。密钥保存在内存中。您的每个应用程序都有自己的现有密钥知识,他们不共享或同步的知识。您是否尝试从两个应用程序写入缓存?您可能最终会破坏缓存。

如果您需要在不同的应用程序之间共享数据,我相信缓存不是解决方案。它应该在缓存之外执行。

请注意,您可以使用横向TCP缓存或RMI缓存来分发缓存数据。这些辅助缓存可以管理缓存更新和同步。