Oracle 12c应用连接VIP轮训负载均衡?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle 12c应用连接VIP轮训负载均衡?相关的知识,希望对你有一定的参考价值。


目前很多生产数据库都是两节点RAC,应用连接的数据库通常会连接SCAN IP或者VIP,这里做一个小实验,如果我们使用VIP连接,

应该怎样配置我们的客户端,负载均衡是否是严格意义上的轮训机制,只有通过自己的测试才能得到准备的答案。


  1. tnsnames.ora配置

<rac01:orcl1:/u01/app/oracle/product/12.1.0/dbhome_1/network/admin>$less tnsnames.ora 

# tnsnames.ora Network Configuration File: /u01/app/oracle/product/12.1.0/dbhome_1/network/admin/tnsnames.ora

# Generated by Oracle configuration tools.


orcl =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = rac-scan)(PORT = 1521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = orcl)

    )

  )


vip =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.203)(PORT = 1521))

    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.204)(PORT = 1521))

    (LOAD_BALANCE = yes) 

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = orcl)

    )

  )


2.测试脚本如下

<rac01:orcl1:/u01/app/oracle/product/12.1.0/dbhome_1/network/admin>$

<rac01:orcl1:/u01/app/oracle/product/12.1.0/dbhome_1/network/admin>$less load_balance.sh 

#!/bin/bash  

for i in {1..100}  

do  

echo $i

sqlplus -S system/[email protected] <<EOF

select instance_name from v\$instance;

select count(*) from t1;

EOF

sleep 1  

done  

exit 0 


3.开始测试,观察

<rac01:orcl1:/u01/app/oracle/product/12.1.0/dbhome_1/network/admin>$sh load_balance.sh 

1


INSTANCE_NAME

----------------

orcl1



  COUNT(*)

----------

   2910624


2


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


3


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


4


INSTANCE_NAME

----------------

orcl1



  COUNT(*)

----------

   2910624


5


INSTANCE_NAME

----------------

orcl1



  COUNT(*)

----------

   2910624


6


INSTANCE_NAME

----------------

orcl1



  COUNT(*)

----------

   2910624


7


INSTANCE_NAME

----------------

orcl1



  COUNT(*)

----------

   2910624


8


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


9


INSTANCE_NAME

----------------

orcl1



  COUNT(*)

----------

   2910624


10


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


11


INSTANCE_NAME

----------------

orcl1



  COUNT(*)

----------

   2910624


12


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


13


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


14


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


15


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


16


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


17


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


18


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


19


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


20


INSTANCE_NAME

----------------

orcl1



  COUNT(*)

----------

   2910624


21


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


22


INSTANCE_NAME

----------------

orcl1



  COUNT(*)

----------

   2910624


23


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


24


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


25


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


26


INSTANCE_NAME

----------------

orcl1



  COUNT(*)

----------

   2910624


27


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


28


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


29


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


30


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


31


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


32


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


33


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


34


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


35


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


36


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


37


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


38


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


39


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


40


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


41


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


42


INSTANCE_NAME

----------------

orcl1



  COUNT(*)

----------

   2910624


43


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


44


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


45


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


46


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


47


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


48


INSTANCE_NAME

----------------

orcl2



  COUNT(*)

----------

   2910624


49


INSTANCE_NAME

----------------

orcl1



  COUNT(*)

----------

   2910624


50


INSTANCE_N

....省略...............


  COUNT(*)

----------

   2910624


100


INSTANCE_NAME

----------------

orcl1



  COUNT(*)

----------

   2910624


以上是关于Oracle 12c应用连接VIP轮训负载均衡?的主要内容,如果未能解决你的问题,请参考以下文章

Weblogic 12c 负载均衡和session复制

Weblogic 12c 负载均衡和session复制

Oracle] RAC 之 - 负载均衡深入解析

分布式,集群和负载均衡区别

lvs+keepalived实现负载均衡

单个SCAN_IP是否负载均衡?