为什么 wicket 页面被序列化?

Why are wicket pages serialized?

当我请求一个页面时,我看到它在渲染后序列化并存储在磁盘上(和二级缓存中),所以在分离阶段。页面本身也存储在会话中。

当我再次请求页面时,在会话中找到了。所以连载页面没有查阅

当我在另一个会话中请求页面时,页面被重新创建。我认为在这种情况下会使用序列化页面。

那么你能给我一个例子,一个从磁盘(或二级缓存)读取序列化页面的场景吗?

查看此 url 跟踪:

第一个页面实例现在已从磁盘反序列化。

http 会话保持 live 仅对上一个请求周期中使用过的页面的引用。任何较旧的页面仅在磁盘中。如果您的用户使用浏览器后退按钮,则会从磁盘加载旧实例。

磁盘上的一个文件用于存储每个会话的页面。 I.e.different 用户有不同的文件和他们自己的页面。共享文件将是一个安全问题,就像共享 http 会话一样。

额外信息:磁盘存储是 Wicket 的一部分,用作默认持久存储。 WicketStuff-DataStores 模块提供 Redis、Hazelcast、Cassandra 和 Memcached 的实现。如果您希望旧页面在 Web 服务器集群中可用,则可以使用它们。