gpt4 book ai didi

java - 共享数据和 session 的两个网络应用程序

转载 作者:行者123 更新时间:2023-11-28 22:27:37 26 4
gpt4 key购买 nike

我已经使用 java、spring 和 tomcat8 作为服务器编写了一个 Web 应用程序,现在我想编写其他的,但这个必须与前一个交互。它必须共享来自数据库和 session 的一些数据(我的意思是如果用户在一个应用程序中登录,他不需要在其他应用程序中登录)。实现这个的最佳方法是什么?

最佳答案

有几种方法可以解决这个问题。 Tomcat 支持集群参见:https://tomcat.apache.org/tomcat-9.0-doc/cluster-howto.html但正如 Dimitrisli 已经写过的那样,查看 spring-session 可能是最简单的解决方案(请参阅:http://projects.spring.io/spring-session/)。

我在我的一个项目中使用它并且它工作得很好,但你必须知道现在默认的序列化方案是“ObjecStream”,这是常规的 java 序列化。因此,您不能在要放入 session 的服务器上使用不同版本的类。这将导致反序列化异常。但我很确定如果您使用 tomcat/jboss7glassfish/etc 可能会出现同样的问题。聚类。

如果你想在你的服务部署中自由,你可以使用集群解决方案之一,只存储必要的最少信息,比如 sessionID,然后使用像 redis 或任何你喜欢的数据库解决方案来存储 session 相关数据采用更“类进化”友好的格式,例如 json。这会为您带来更多工作,但也会带来更大的灵 active 。

关于java - 共享数据和 session 的两个网络应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35980349/

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