我有一些hazelcast http会话复制特性的问题。
我有些问题:
编辑:
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("Get Method. Check Session...");
HttpSession session = req.getSession(false);
if (session==null) {
System.out.println("User with null session, generating one...");
session = req.getSession(true);
if (session==null)
System.out.println("Session can not be generated.");
}
if (session!=null)
System.out.println("Received GET request from session " + session.getId());
}
将标准hazelcast.xml放入WEB-INF文件夹(与hazelcast 3.2.5的ZIP归档打包到bin文件夹中的hazelcast.xml完全相同)
将hazelcast过滤器添加到web.xml中,与正式文档中的示例完全相同
在正式文档中,我没有找到任何其他需要的html" target="_blank">配置(http://hazelcast.org/docs/latest/manual/html/httpsessionclustering.html),我满足了所有要求。
当两个节点启动时,它们都加入集群,我在两侧都有以下日志:
INFO: [192.168.0.68]:4701 [dev] [3.2.5]
Members [2] {
Member [192.168.0.68]:4701 this
Member [192.168.0.49]:4701
}
当我发出第一个请求时,在第一个节点上得到了logs:Get方法。检查会话...会话为空的用户,正在生成一个...收到来自会话HZ2F779DFA402A406E9ACCA3E0298B37F5的GET请求
并且此请求之后的每个请求都将生成以下日志:
Get方法。检查会话...
会话为空的用户,正在生成一个...
收到会话HZB89D6CDC1CC94FDEBC82019BAAA9022E的GET请求
会话更改的原因?我做错了什么?
这个用例太简单了,可能我遗漏了什么,但我想不出来。还有其他的先决条件?
使用的软件:
java 1.7.0_25
你能发布一些日志吗,特别是像这样的东西:
Members [2] {
Member [192.168.1.100]:5701 this
Member [192.168.1.100]:5702
}
关于您的问题:
我不认为这应该是一个问题,只要没有港口冲突。
一旦我们开始使用这个,Vaadin就会崩溃并停止工作。当为了调试而用内存中的映射替换外部缓存时,它会再次工作。 这似乎是由引起的,因为它将存储为会话属性。是,Javadoc显示: VaadinSession中的所有内容都应该是可序列化的,以确保与使用序列化持久化会话数据的方案兼容。 注意:我们也有一个使用Vaadin8的应用程序版本,这里也发生了同样的事情。这个问题似乎是由Vaadin Sprin
背景:我在tomcat上部署了一个javaee webapp,它使用基于表单的身份验证。当web服务器接收到登录请求时,它将该请求发送到一个专用的身份验证服务,该服务验证用户登录(用户id和密码)。验证成功后,用户的会话将在web服务器中维护。 问题:我在这里编写了一个简单的webpp源代码,以模拟该场景。成功登录后,当前实例无效,并创建新实例。对于post登录页面的每个请求,都会验证会话。设置一
问题内容: 我正在本地计算机上的Tomcat 7上设置群集/复制,以评估它是否可与我的环境/代码库一起使用。 建立 我在不同端口上运行的同级目录中有两个相同的tomcat服务器。我已经在其他两个端口上监听了httpd,并作为VirtualHosts连接到了两个tomcat实例。我可以在配置的端口上访问两种环境并与之交互。一切都按预期进行。 Tomcat服务器在server.xml中启用了集群功能:
我使用redisson在运行tomcat V8.5的3个tomcat吊舱中复制spring应用程序的tomcat会话。我还在同一个Kubernetes集群中部署了Redis。下面是我的tomcat context.xml配置 我的redisson配置如下: 当我在所有pod上运行我的应用程序和负载平衡请求时,它会为发送到不同pod的每个请求创建一个新的JSESSIONID cookie 这应该验证
我试图使用Spring Cloud的Zuul、Eureka和我自己的服务实现微服务架构。我有多个具有UI和服务的服务,每个服务都可以使用x509安全性对用户进行身份验证。现在我想把祖尔放在那些服务机构的前面。由于Zuul无法将客户端证书转发到后端,我认为下一个最好的方法是在Zuul的前门对用户进行身份验证,然后使用Spring会话在后端服务中复制他们的身份验证状态。我遵循了Dave Syer的教程
我正在尝试使用Hazelcast分布式缓存来复制带有Spring Boot&Spring Security的HTTP会话,但无法进行设置(不过,简单的缓存复制工作良好,我已经通过在一个应用程序节点的map中设置一些值并尝试在其他集群节点上获得它来验证了这一点)。 我已经通过网页上的东西,但不幸的是,我无法设置这一点。应用程序在集群中运行时,在一个节点上登录后,我没有在其他节点上获取会话对象(我正在