Vertica7 Native Connection Load Balance
原文链接:Vertica7 Native Connection Load Balance
在Vertica7曾经的版本号中,Vertica是通过Linux的Virtual IP来实现连接的负载均衡的,可是在Vertica7x中,Vertica本身提供了连接的负载均衡功能,这个功能用起来也是很方便的。以下就来看看怎么使用这个功能。
1. 首先安装N个Vertica7的节点。然后用数据库管理员的身份执行以下的命令来让Vertica使用这个功能
SELECT SET_LOAD_BALANCE_POLICY('ROUNDROBIN');
假设须要disable这个功能,能够通过以下的命令
SELECT SET_LOAD_BALANCE_POLICY('NONE');
假设须要查看当前是否enable了这个功能能够使用以下的命令查看
SELECT GET_LOAD_BALANCE_POLICY();
server端的设置就这么多,以下看看客户端须要哪些步骤。
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties; public class VerticaTest {
private static String USERNAME = "<user>";
private static String PASSWORD = "<password>";
private static String URL = "jdbc:vertica://<ip>:5433/<db>"; public static void main(String[] args) throws Exception {
Class.forName("com.vertica.jdbc.Driver");
Properties props = new Properties();
props.put("user", USERNAME);
props.put("password", PASSWORD);
props.put("ConnectionLoadBalance", 1);
for (int x = 1; x <= 10; x++) {
try {
Connection conn = DriverManager.getConnection(URL, props);
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT node_name FROM v_monitor.current_session;");
rs.next();
System.out.println("Connected to node " + rs.getString(1).trim());
conn.close();
} catch (SQLException ex) {
ex.printStackTrace();
}
}
}
}
这里特别注意以下一句,这一句设置了一个连接属性告诉Vertica的JDBC驱动使用负载均衡功能。
props.put("ConnectionLoadBalance", 1);
这里特别说一下,假设server上没有enable负载均衡功能,那么这个属性也不会影响正常的功能。仅仅只是不使用负载均衡功能罢了。
另外也能够通过设置url属性来实现。例如以下:
"jdbc:vertica://<ip>:5433/<db>?ConnectionLoadBalance=1"
4. 測试
执行这段代码,能够看到每次连接到的Vertica节点都会依照顺序变动。
另外也能够通过以下的sql来查询当前全部连接的情况。
select node_name, client_hostname from sessions;
Vertica7 Native Connection Load Balance的更多相关文章
- Oracle RAC 客户端连接负载均衡(Load Balance)
实现负载均衡(Load Balance)是Oracle RAC最重要的特性之一,主要是把负载平均分配到集群中的各个节点,以提高系统的整体吞吐能力.通常情况下有两种方式来实现负载均衡,一个是基于客户端连 ...
- Using load balance for thrift servers
Software load balance .Nginx(http://nginx.org) 1.Install nginx download source code from http://ngin ...
- Neutron: Load Balance as a Service(LBaaS)负载均衡
load balancer 负责监听外部的连接,并将连接分发到 pool member. LBaaS 有三个主要的概念: Pool Member,Pool 和 Virtual IP Pool M ...
- LB(Load balance)负载均衡集群--{LVS-[NAT+DR]单实例实验+LVS+keeplived实验} 菜鸟入门级
LB(Load balance)负载均衡集群 LVS-[NAT+DR]单实例实验 LVS+keeplived实验 LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一 ...
- Server Data Synchronization Via Linux rsync、rsync+inotify Between Load Balance Server
目录 . 远程文件同步的应用场景 . rsync+crontab . rsync+inotify 1. 远程文件同步的应用场景 在负载均衡集群的应用场景中,往往在多台web server的前端有一个提 ...
- Oracle RAC 服务器端连接负载均衡(Load Balance)
Oracle RAC服务器端的负载均衡是根据RAC中各节点的连接负荷数情况,将新的连接请求分配到负荷最小的节点上去.当数据库处于运行时,RAC中各节点的PMON进程每3秒会将各自节点的连接负荷数更新到 ...
- 亲密接触Redis-第三天(Redis的Load Balance)
前言 上两天讲述了Redis的基本搭建和基于HA的集群布署方式以及相关的策略和注意点.今天开始讲述Redis的Cluster功能,而这块目前来说网上资料不是太全,就算有1,2篇也只是单讲服务端的搭建也 ...
- Flume 高可用配置案例+load balance负载均衡+ 案例:日志的采集及汇总
高可用配置案例 (一).failover故障转移 在完成单点的Flume NG搭建后,下面我们搭建一个高可用的Flume NG集群,架构图如下所示: (1)节点分配 Flume的Agent和Colle ...
- "高可用方案工具包" high availability toolkit 1.2 公布了。version 1.2 新增了 负载均衡 load balance 的技术实现
"高可用方案工具包" high availability toolkit 1.2 公布了. version 1.2 新增了 负载均衡 load balance 的技术实现. 项目 ...
随机推荐
- [NOIP2017]列队(线段树/裂点splay)
考虑n=1的做法,就是支持: 1.在线删一个数 2.在结尾加一个数 3.查询序列的第y个数 用线段树记录区间内被删元素的个数,可以通过线段树上二分快速得解,对于新增的数,用vector记录即可. 对于 ...
- BZOJ 4036: [HAOI2015]按位或 集合幂函数 莫比乌斯变换 莫比乌斯反演
http://www.lydsy.com/JudgeOnline/problem.php?id=4036 http://blog.csdn.net/lych_cys/article/details/5 ...
- 【SDOI2017】树点染色【线段树+LCT】
本来只是想练练LCT,没想到是个线段树 对于操作1:诶新的颜色?这不是access吗? 也就是说,我们用一棵splay来表示一种颜色 操作2直接在LCT上乱搞-- 不对啊,操作3要查子树 诶好像是静态 ...
- CodeForces - 1016C Vasya And The Mushrooms
题面在这里! 好久没有体会这种A题的快感了23333 一开始看错了,以为权值是从1开始的,不过这样不要紧,最后把算的答案减去两行数的和就是正确的答案了. 然后发现位于一个角上的时候,我们其实只有两种选 ...
- bozj 1449/2895: 球队预算 -- 费用流
2895: 球队预算 Time Limit: 10 Sec Memory Limit: 256 MB Description 在一个篮球联赛里,有n支球队,球队的支出是和他们的胜负场次有关系的,具体 ...
- Mac下配置Idea的Maven
环境版本: Mac OS: 10.13.4 JDK: 1.8 Idea: 2018.3 Maven: 3.6.0 Maven 相关配置: Maven 下载: http://maven.apache.o ...
- linux基础命令学习 (十)Vi
1.vi的基本概念 基本上vi可以分为三种状态,分别是命令模式(command mode).插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下: ...
- jQuery使用一知半解
jQuery是目前使用最广泛的javascript函数库.据统计,全世界排名前100万的网站,有46%使用jQuery,远远超过其他库.微软公司甚至把jQuery作为他们的官方库.对于网页开发者来说, ...
- 帝国cms安装在二级目录 构建中英文网站
帝国cms是很好的建站工具,一般都是安装在根目录,但是有时候租一个空间,要搭建两个网站,或者中英文双语的网站,肯定得用到二级目录 帝国cms安装二级目录步骤 1,讲安装包解压缩到要安装的二级目录下 2 ...
- HDFS API基本操作
对HDFS API基本操作都是通过 org.apache.hadoop.fs.FileSystem类进行的,以下是一些常见的操作: package HdfsAPI; import java.io.Bu ...