WEBLOGIC连接OracleRAC的负载均衡测试
来源:优易学  2011-9-27 15:06:38   【优易学:中国教育考试门户网】   资料下载   IT书店

  要进行压力测试,中间件使用WEBLOGIC 816,数据库版本为11.1.0.6 RAC,压力测试工具为LOADRUNNER 8.0。测试单实例与RAC环境各个节点的负载情况。
  在WEBLOGIC上配置了一个多池,利用WEBLOGIC提供的负载均衡策略,将并发均衡的分别到两个节点上。
  但是测试发现,一旦运行了一段时间,所有的压力都会加载到一个节点上,而另一个节点上机会没有任何的压力。
  通过数据库中查询到的结果如下:
  SQL> SELECT INST_ID, STATUS, COUNT(*)
  2 FROM GV$SESSION
  3 WHERE USERNAME = ’NDMAIN’
  4 GROUP BY INST_ID, STATUS;
  INST_ID STATUS COUNT(*)
  ---------- -------- ----------
  1 INACTIVE 6
  1 ACTIVE 1
  2 ACTIVE 147
  2 INACTIVE 3
  WEBLOGIC的并发设置为150,而LOADRUNNER并发为200,Oracle每个实例的SESSION为600。
  可以看到,基本上压力完全集中在实例2上。实例1上处于空闲状态,如果压力测试运行时间足够长,可能在短时间内实例1上的ACTIVE连接能达到二、三十左右,但是很快又全部释放。
  SQL> SELECT INST_ID, STATUS, COUNT(*)
  2 FROM GV$SESSION
  3 WHERE USERNAME = ’NDMAIN’
  4 GROUP BY INST_ID, STATUS;
  INST_ID STATUS COUNT(*)
  ---------- -------- ----------
  1 ACTIVE 20
  1 INACTIVE 54
  2 ACTIVE 121
  2 INACTIVE 28
  测试了多次,结果都很类似,压力几乎完全集中到一个节点上。不过不见得每次压力都是在节点2上,很有可能在WEBLOGIC服务重启之后,下次测试开始,所有的压力都集中到节点1上。这说明问题应该不是两个节点的硬件处理不平衡造成的。
  这个测试的是长时间运行的查询,而对于快速相应的INSERT语句,可以看到两个节点上都有很少的ACTIVE的会话。这时因为事务处理很短暂,不可能在短时间内使得WEBLOGIC的并发跑满,因此这种情况没有问题。

[1] [2] 下一页

责任编辑:小草

文章搜索:
 相关文章
热点资讯
热门课程培训