当前位置: 首页 > 面试题库 >

最初是否将JSF状态保存到服务器以及会话超时转移到客户端?

咸晨
2023-03-14
问题内容

是否有任何状态保存方法可以让JSF应用程序将状态数据最初保存在服务器上,但是在会话到期时间间隔之后,该状态会转移到客户端,这样即使服务器和内存上的会话超时更好,应用程序也始终可以响应在服务器上管理?

或以任何方式可以实施?但是我希望这应该成为JSF规范的一部分!

编辑

在BalusC提出建议之后,我对 Stateless JSF
原则及其当前实现
印象深刻。如果这里的其他人也有兴趣将无状态JSF添加到JSF规范中,请考虑查看或投票该问题。

无状态JSF为某些收益提供了巨大的性能提升,例如无法动态创建视图(例如,通过绑定,JSTL标签等)或对其进行修改。

对于高负载应用程序和体系结构,无状态JSF操作模式将非常有用:

https://web.archive.org/web/20140626062226/http://industrieit.com/blog/2011/11/stateless-
jsf-high-performance-zero-per-request-memory-
overhead/#comment-4

这是雅各布先前提出的建议:http
:
//weblogs.java.net/blog/jhook/archive/2006/01/experiment_goin.html

这将有助于JSF摆脱“慢速和内存消耗”的污名,并有助于跟上当前的技术趋势(无状态架构)。


问题答案:

从技术上讲这怎么可能?服务器永远无法可靠地事先预测下一个请求是否会创建新会话,因此当前请求的响应必须使用客户端状态保存而不是服务器端状态保存。如果您成功使用纯JSP/ Servlet实现了它,请随时发布JSF规范增强请求。

只需使用客户端状态保存并确保启用了部分状态保存即可。与完全状态节省相比,开销相对较小。

注意,可以完全使用无状态的JSF。另请参阅此博客。唯一的主要收获就是您不能动态创建视图(例如,通过bindingJSTL标签等),也不能在创建后对其进行操作(例如,通过添加/删除组件的子代)。



 类似资料:
  • 问题内容: 在JSF 2.0.9,Weblogic 10.3.4上运行。我们现在在生产环境中运行JSF,但是会话复制遇到了一些问题并进行了故障转移。我们正在为我们的bean使用viewscope,我已经确保它们是可序列化的/瞬态的,并且瞬态变量实际上是无状态的。但是,会话故障转移不起作用。我已经进行了广泛的测试,并设法通过在web.xml中设置以下参数来使其正常工作 如果设置为,则在故障转移时会收

  • 我正在用java开发一个ServerSocket,我想知道,在客户端连接时,是否有可能将客户端/套接字发送到另一个ServerSocket。例如,一个客户端连接到123.41.67.817(只是一个随机IP),在连接时,客户端被直接发送到例如124.51.85.147(另一个随机IP),当然还有一个端口。所以一个会发生什么的小地图。 服务器套接字(侦听连接)< br> 客户端- 这有可能吗?抱歉问

  • 当我尝试使用套接字将物理设备连接到服务器时,我遇到了一个问题。在服务器端,它似乎不接受任何连接,而在客户端,套接字超时。你知道为什么会这样吗? 我在下面提供我的代码 服务器代码: 客户端: 11-16 23:32:11.016:W/系统。错误(24213):java.net。ConnectException:无法连接到/192.168.1.116(端口9090):连接失败:ETIMEDOUT(连接

  • 我有下一个代码: 但当我运行它时,它会出错: TypeError:不支持的类型“ 我尝试了很多方法,但似乎不可能将日期时间保存到DynamoDB。顺便说一句,它在MongoDB中运行良好。 有什么解决办法吗?