Weblogic集群注意事项

本文档详细介绍了在集群环境中进行Servlet与JSP编程时需要注意的问题,包括确保Session数据可序列化、使用setAttribute方法更新Session状态、考虑序列化带来的性能开销以及控制Frame对Session数据的访问。同时,还探讨了Session数据的复制与备份机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文参考:http://edocs.bea.com/wls/docs100/cluster/failover.html

[size=medium][b][color=darkblue]一: Programming Considerations for Clustered Servlets and JSPs
集群环境中的Servlet/JSP编程时注意事项:[/color][/b]

[b][color=darkblue]1. Session Data Must Be Serializable[/color][/b]
Session中存储的对象必须是可序列化的。

[b][color=darkblue]2. Use setAttribute to Change Session State[/color][/b]
调用session对象的setAttribute方法,session对象和它的attributes会在集群中复制到其他服务器中。所以,对session中的attribute对象的任何更改后,都应该调用setAttribute方法来同步其他服务器的session。

这个同步过程是通过in-memory replication来实现的。
[b]
[color=darkblue]3. Consider Serialization Overhead [/color][/b]
考虑拷贝的开销。拷贝过程中序列化开销是应该考虑的,如果对象数据很大,更应该考虑性能问题。

[b][color=darkblue]4. Control Frame Access to Session Data [/color][/b]
尽量限制前台用FrameSet来访问session,因为多个Frame的请求,对于服务器来说,可能是分离的,但是对客户端来说,确应该是一个独立session。这样,如果每个frame都访问或者修改session,则会发生逻辑性的错误。[/size]

[size=medium][b][color=darkblue]二: Session复制/备份[/color][/b][/size]

[size=medium][b][color=darkblue]1. 通过前端代理(例如apache)访问集群中的JSP/Servlet时[/color][/b][/size]

[img]/upload/attachment/102694/12b1beed-fedf-3172-ace9-d64d32e750a9.gif[/img]

[color=darkblue]注意:
客户端浏览器写有两个cookie:primary,scondary分别对应集群中的A,B两个Server。
A Server上存有客户Session数据(Primary State), B Server保存A Server的session备份(Secondary State)。

如果A Server出故障,前端代理会根据cookie自动路由到B Server,这样B就变成新的Primary Server, 同时系统会将Session State备份到Server C上,Server C也就变成了Secondary Server了。[/color]


[size=medium][b][color=darkblue]通过负载均衡硬件访问集群中的JSP/Servlet [/color][/b][/size]

[img]/upload/attachment/102696/d16091eb-77d0-3a45-b6c7-9319efc8207e.gif[/img]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值