鉴于 JavaServer Faces 在服务器端本质上是有状态的,建议使用哪些方法来水平扩展 JSF 2.0 应用程序?
如果一个应用程序运行多个 JSF 服务器,我可以想象以下场景:
- 粘性 session :将与给定 session 匹配的所有请求发送到同一服务器。
- 问题:通常使用什么技术来实现这一目标?
- 问题:服务器故障会导致 session 丢失...并且通常看起来是脆弱的架构,尤其是在重新开始时(不尝试扩展现有应用程序)
- 状态( session )复制:在集群中的所有 JSF 服务器上复制 JSF 状态
- 问题:通常使用什么技术来实现这一目标?
- 问题:无法扩展。集群总内存=最小服务器总内存
- 指示 JSF(通过配置)将其状态存储在外部资源上(例如,运行非常快的内存数据库的另一台服务器),然后在需要应用程序状态时从 JSF 服务器访问该资源?
- 问题:这可能吗?
- 指示 JSF(通过配置)为无状态?
- 问题:这可能吗?
[编辑]
针对 Ravi 的粘性 session 建议进行了更新
最佳答案
关于jsf-2 - JSF 2.0 应用程序的水平扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10166883/