繁体   English   中英

在JDBC连接字符串中选择负载平衡策略

[英]Choosing load balancing strategy in JDBC connection string

目前,我的连接字符串如下所示

jdbc:mysql:loadbalance://server1:3306,server2:3306/sample_db?rewriteBatchedStatements=true

其中server1,server2是MASTER-MASTER复制的MySQL服务器MASTER-MASTER

据我所知,负载平衡将默认使用“ roundrobin”策略来完成。

问题是

是否有任何策略可以在连接之前检查服务器的运行状况? 如何更改策略以及可用的策略?

我在Google上搜索了很多,唯一发现的是:

 jdbc:mysql:loadbalance://host-1,host-2,...host-n/database?loadBalanceBlacklistTimeout=5000 

“ loadBalanceBlacklistTimeout”添加了所需的功能,即在指定的时间内将连接池中的失败连接搁置一旁,仅使用有效的连接。

有2种常见的负载平衡策略。 其中之一是随机(roundrobin),默认情况下。 其次是best response time ,如下所示:

jdbc:mysql:loadbalance://ip1:3306,ip2:3306/messenger?rewriteBatchedStatements=true&loadBalanceBlacklistTimeout=10000&loadBalanceStrategy=bestResponseTime

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM