查看我自己的应用程序中随机生成的一些 Weblogic JSessionID
BrYx4hyPZ4VSP9Wo4eU0OrqmhXMLFONbRHnpLFwRKZ9MSaf6wvYj!-314662473
and
BrYiFED29itaC4EBpWYM8RKVQQauHkvnTsA2OAKUPZXVc9oUD5fB!-784323496.
现在,如果您注意到会话 ID 的部分先后! i.e 314662473
and 784323496
.
这个数字是唯一标识符Weblogic 提供给正在运行的 JVM,即正在运行的 Weblogic 服务器。
如果您的应用程序中有多个服务器,Weblogic 知道如何使用这个 9 位 JVM 编号(会话 ID 的一部分)将您的会话路由回正确的服务器。
每次重新启动 weblogic 服务器时,它都会生成一个新的 JVM id,并在该 weblogic 服务器运行时使用它。因此,对该服务器的任何命中都将在会话 ID 末尾具有相同的 ID。
The 会话ID的格式 is:
JSESSIONID=SESSION_ID!PRIMARY_JVMID_HASH!SECONDARY_JVM_HASH!CREATION_TIME
因此,如果主节点不可用,它将尝试跳转到辅助节点并如果您启用了会话复制- 然后可以恢复会话数据。
如果你正在跑步本地只有一个服务器,那么格式很简单
JSESSIONID=SESSION_ID!PRIMARY_JVMID_HASH!CREATION_TIME
关于有时它没有出现,我发现它通常取决于浏览器是否在地址栏中显示sessionid