dev2dev.bea.com.cn
首页 资源中心 dev2dev学堂 在线技术论坛 专家Blog User Group CodeShare

WebLogic Server 性能优化 (4) JMS篇

2007-12-23 22:20:12 | 评论 (0) | 被访问(320)次

袁玉强
  袁玉强,Dev2Dev ID:JadeYuan 熟悉WebLogic Server,WebLogic Integration及Tuxedo产品。


对于JMS的优化,主要介绍一下Paging Store。

JMS Destination里面的消息,默认是存储在JVM堆内存中的,即使打开了Persistent Store,也会在内存中和Persistent介质(例如File或者JDBC)中都有一份。如果JMS消息比较多,并且消息比较大的时候,会发生JMS消息占用大量内存的问题。这种情况通常出现在WebLogic Integration应用上,因为WLI大量的使用到了JMS。如果配置了Paging Store,那么达到设定的阈值之后,消息会交换到Store里面,JVM堆内存中只是剩下一个引用,这样可以极大的节省JVM堆内存。当然了,这样会带来一点点的性能消耗。

以File Store为例,配置步骤如下,在WebLogic Console上,

1. Services>JMS>Stores,然后点击Configure a new JMS File Store,填写Directory,然后点击[Create]按钮

2. Services>JMS>Servers,点击你的JMS Server,在下拉列表中选择在第1步创建的Paging Store,然后点击[Apply]按钮

3. 在右侧Thresholds & Quotas,启用Bytes Paging Enabled选项,然后填写Messages Threshold High和Messages Threshold Low选项。这两个选项是当未处理的JMS的Bytes大小达到Messages Threshold High的时候,将会将JMS Message 交换到Store中去;低于Messages Threshold Low的时候,会从Store中再交换回来。Messages Maximum可以不用去设置。当然了,也可以根据消息的数量而不是Bytes大小来设置Paging,但是使用Bytes可能更容易估算和度量。

另外,如果同时启用了Persistent Store和Paging,可能不会看到Paging Store里面有东西,猜测是Paging的时候直接使用的Persistent Store,这样更能够节省资源。具体是什么机制,还得BEA的高手来解答了。



Tags:
文章评论:(以下网友留言只代表个人观点,不代表BEA观点和立场)
暂时没有评论!

2007年12月

          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31            
RSS订阅

袁玉强's Blog搜索