28、Seam框架性能调优、集群配置与定时任务调度

Seam框架性能调优、集群配置与定时任务调度

1. 数据库更新优化

在Seam应用中,数据库更新采用批量刷新的方式,即在对话结束时统一刷新,而非在每个请求/响应周期结束时刷新。这种方式减少了对话期间不必要的数据库往返操作。非事务性数据库更新比事务性更新速度明显更快。不过,这种方法存在一个缺点,如果在更新批次进行到一半时数据库(或与数据库的连接)出现故障,数据库将仅部分更新。

为解决这一问题,可以在有状态的Seam组件中累积数据库更改,然后在对话结束时使用单个事务性方法更新实体管理器。这样既能避免对话期间的往返操作,又能在实际访问数据库时利用事务支持。

2. 集群配置

2.1 集群的重要性

企业应用通常需要具备可扩展性和容错性。可扩展性意味着可以通过添加更多服务器来处理更多负载,使应用具有前瞻性。容错性则表示当服务器出现故障(如硬件问题)时,其负载会自动转移到故障转移节点,且故障转移节点应已拥有用户的状态数据(如对话上下文),从而确保用户不会感到任何中断。Seam作为企业框架,从设计之初就支持集群。

2.2 安装集群配置文件

在JBoss AS安装程序(或JEMS安装程序)中,确保选择ejb3 - clustered配置文件。该配置文件包含运行集群EJB3(以及Seam)应用所需的库JAR文件和配置文件。

2.3 粘性会话负载均衡

所有HTTP负载均衡器都支持粘性会话,即同一会话中的请求必须转发到同一个JBoss节点,除非发生故障转移。在设置中必须启用粘性会话。因为在实际集群中,网络和CPU资源有限,节点之间复制状态需要时间。如果没有粘性会话,当请

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值