dataHost
节点主机的相关配置
代码语言:javascript复制<dataHost name="h101" maxCon="100" minCon="10" balance="0" writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100">
<heartbeat>select user()</heartbeat>
<writeHost host="h101M1" url="192.168.100.101:3306" user="root" password="mysql">
<!-- can have multi read hosts -->
</writeHost>
</dataHost>
<dataHost name="h202" maxCon="100" minCon="10" balance="0" writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100">
<heartbeat>select user()</heartbeat>
<writeHost host="h202M1" url="192.168.100.202:3306" user="root" password="mysql">
<!-- can have multi read hosts -->
</writeHost>
</dataHost>
Attribute | Comment |
---|---|
maxCon | 一个读写实例链接池的最大连接数 |
minCon | 一个读写实例链接池的最小连接数,初始化连接池的大小 |
balance | 负载均衡类型:0 代表不开启读写分离机制,只使用writeHost; 1 代表readHost与writeHost分担读请求; 2 代表随机分配读请求和1类似; 3 代表只由readHost来承担读请求 |
writeType | 负载均衡类型:0 代表发到第一个writeHost,挂了后切到还生存的第二个writeHost,重新启动后以切换后的为准,也就是不漂回;1 代表写操作随机发送到writeHost,这样不安全; |
dbType | 后端数据库类型 |
dbDriver | mysql系可以使用native,其它系列得使用JDBC |
switchType | 切换类型:-1 代表不切换,1 代表自动切换, 2 代表基于主从同步状态决定是否切换 |
slaveThreshold | slave读的安全边界,如果Seconds_Behind_Master 大于这个值,这台slave会被临时剔除,以免被读 |
heartbeat
里面包含一个语句,用语句执行成功与否来判定数据库的可用性
writeHost/readHost
Attribute | Comment |
---|---|
host | 一个主机标识,便于区分,不必和真实主机名一致 |
url | 后端实例连接地址 |
user | 连接账户 |
password | 连接密码 |
Tip: 用户名和密码要提前在各实例中赋予相应连接和操作权限