负载均衡()
打开http://localhost:/Cart/选择要购买的商品如图所示选择了Xfiles movie和NIN CD
这些数据保存在Web服务器的session中接着打开http://localhost:/Cart/虽然从未在服务器上做过任何选择操作但是服务器的返回数据和完全一致如图所示
图 共享session示例示意图
图 共享session示例示意图
这表明通过Terracotta服务器两个Web应用完全共享了session使用Terracotta在不同Web服务器间共享session只需要做一些简单的配置比如在webxml中加入Terracotta过滤器如以下代码片段所示在配置文件中指定了Terracotta服务器的地址
<filter>
<filtername>terracottafilter</filtername>
<filterclass>orgterracottasessionTerracottaJettyxSessionFilter
</filterclass>
<initparam>
<paramname>tcConfigUrl</paramname>
<paramvalue>localhost:</paramvalue>
</initparam>
</filter>
<filtermapping>
<filtername>terracottafilter</filtername>
<urlpattern>/*</urlpattern>
<dispatcher>ERROR</dispatcher>
<dispatcher>INCLUDE</dispatcher>
<dispatcher>FORWARD</dispatcher>
<dispatcher>REQUEST</dispatcher>
</filtermapping>
在使用时分布式session对于应用是透明的以下代码片段显示了在JSP中访问分布式session:
<%
cartprocessRequest(request)
//为了能在集群中更新数据每次Request请求
//必须更新Session内的数据
sessionsetAttribute(cart cart)
%>
返回目录Java程序性能优化让你的Java程序更快更稳定
编辑推荐
Java程序设计培训视频教程
JEE高级框架实战培训视频教程
JME移动开发实战教学视频
Visual C++音频/视频技术开发与实战
Oracle索引技术
ORACLEG数据库开发优化指南