weblogic配置rac经验之谈

由于项目中weblogic与oracle  rac集群环境之间的衔接一直有问题,无法实现load balance,今天下午 找了一个oracle售后顾问来给指导总结:

一、目前在weblogic配置load balance主要有三种方式

1、Gridlink Datasource

这是oracle收购bea之后新添加的一种建立datasource的方式。

oracle在官方文档中说明,使用grid link 可以有两种方式,一种是使用scan ,一种是使用地址串。

使用scan的时候必须得配置局域网内部dns,由于客户这边没有配置,因此只能使用地址串这种方式。

使用了地址串之后发现,无法实现load balance

地址串如下:

oadbs=
(description=
               (address_list=
                (address=(protocol=tcp)(host=202.205.16.71)(port=1521))
                (address=(protocol=tcp)(host=202.205.16.72)(port=1521))
        )
        (connect_data=(service_name=oadbs))
)
然后又使用

如下串:

oadbs=
(description=
        (address_list=
                (address=(protocol=tcp)(host=202.205.16.71)(port=1521))
                (address=(protocol=tcp)(host=202.205.16.72)(port=1521))


       (load_balance=on)
        (failover=on)
        )
        (connect_data=(service_name=oadbs))
)

发现能够实现load balance

通过oracle 售后专家的研究发现,gridlink 只能使用scan,不能使用地址串。这是oracle官方文档的bug

另外,gridlink中之所以第一个串不能实现load balance,而使用第二个可以,这是oracle开发人员偷懒,如果经过判断发现是普通串之后就作为普通串处理就没有利用gridlink的优势,如果发现是scan的话,才做gridlink处理。

 

2、multipool

3、普通datasource

使用普通的datasource必须使用如下串:

oadbs=
(description=
         (address_list=
                (address=(protocol=tcp)(host=202.205.16.71)(port=1521))
                (address=(protocol=tcp)(host=202.205.16.72)(port=1521))


        (load_balance=on)
        (failover=on)
        )
        (connect_data=(service_name=oadbs))
)

load_balance 与failover,必须在address list 里面。

 

你可能感兴趣的:(weblogic配置rac经验之谈)