KingbaseES RAC集群案例之---jmeter压测

news/2025/3/10 18:28:36/文章来源:https://www.cnblogs.com/tiany1224/p/18672756

案例说明:
通过jmeter压测,测试KingbaseES RAC集群负载均衡功能。

数据库版本:

test=# select version();version
---------------------KingbaseES V008R006
(1 row)

测试架构:

一、jmeter版本

1、系统jiava版本

[root@node203 ~]# java -version
openjdk version "1.8.0_412"
OpenJDK Runtime Environment (build 1.8.0_412-b08)
OpenJDK 64-Bit Server VM (build 25.412-b08, mixed mode)

2、jmeter java配置

[root@node203 ~]# cat /etc/profile
export JMETER_HOME=/soft/apache-jmeter-5.6.3
export PATH=$JMETER_HOME/bin:$PATH
export CLASSPATH=$JMETER_HOME/lib/ext/ApacheJMeter_core.jar:$JMETER_HOME/lib/jorphan.jar:$CLASSPATH

3、jmeter版本
[root@node203 bin]# ./jmeter -v
OpenJDK 64-Bit Server VM warning: If the number of processors is expected to increase from one, then you should configure the number of parallel GC threads appropriately using -XX:ParallelGCThreads=N

_    ____   _    ____ _   _ _____       _ __  __ _____ _____ _____ ____

/ \ | _ \ / \ / | | | | | | | / | | | | _
/ _ \ | |
) / _ | | | |
| | | _ | | |/| | | | | | | | |) |
/ ___ | / ___ \ |
| _ | |
| |
| | | | | |
| | | |
| _ <
/
/ __| /
/ __
|| ||___| _/|| ||_____| || |_____|_| _\ 5.6.3

Copyright (c) 1999-2024 The Apache Software Foundation

二、jmeter配置

1、配置jar驱动接口

如下所示,将数据库jdbc下的jar包拷贝到jmeter的lib目录下:

# 拷贝数据库jar包到jmeter
[root@node209 KingbaseHA]# cd /opt/Kingbase/ES/V8/Interface/jdbc/
[root@node209 jdbc]# ls -lh kingbase8-8.6.0.j*
-rw-rw-r-- 1 kingbase kingbase 1.2M Nov 12 11:09 kingbase8-8.6.0.jar
-rw-rw-r-- 1 kingbase kingbase 1.1M Nov 12 11:09 kingbase8-8.6.0.jre6.jar
-rw-rw-r-- 1 kingbase kingbase 1.2M Nov 12 11:09 kingbase8-8.6.0.jre7.jar[root@node209 jdbc]# scp kingbase8-8.6.0.j* 192.168.1.203:/soft/apache-jmeter-5.2.1/lib/
root@192.168.1.203's password:# 查看jmeter下的jar包    
[root@node203 ~]# cd /soft/apache-jmeter-5.6.3/lib/
[root@node203 lib]# ls -lh kingbase8-8.*
-rw-r--r-- 1 root root 787K Jan 14 18:06 kingbase8-8.2.0.jar
-rw-r--r-- 1 root root 1.2M Jan 14 18:06 kingbase8-8.6.0.jar
-rw-r--r-- 1 root root 1.1M Jan 14 18:06 kingbase8-8.6.0.jre6.jar
-rw-r--r-- 1 root root 1.2M Jan 14 18:06 kingbase8-8.6.0.jre7.jar 

2、启动jmeter

3、配置thread group

4、配置jdbc连接

如下所示,jdbc url连接串(其中:192.168.1.208,192.168.1.209为数据库节点物理ip,以下为负载均衡配置):
jdbc:kingbase8://192.168.1.208::54321,192.168.1.209::54321/prod?targetServerType=master&loadBalanceHosts=true&hostRecheckSeconds=240


5、配置jdbc request

6、配置view results tree(结果查询)

压测结果:

7、配置测试结果汇总

8、jmeter配置汇总
如下所示,jdbc url连接串中192.168.1.11,192.168.1.12分别为在集群两个节点上的vip(手工加载):

<JDBCDataSource guiclass="TestBeanGUI" testclass="JDBCDataSource" testname="kingbaseRAC"><boolProp name="autocommit">true</boolProp><stringProp name="checkQuery"></stringProp><stringProp name="connectionAge">5000</stringProp><stringProp name="connectionProperties"></stringProp><stringProp name="dataSource">kingbaseRAC</stringProp><stringProp name="dbUrl">jdbc:kingbase8://192.168.1.11:54321,192.168.1.12:54321/prod?targetServerType=master&amp;loadBalanceHosts=true&amp;hostRecheckSeconds=240</stringProp><stringProp name="driver">com.kingbase8.Driver</stringProp><stringProp name="initQuery"></stringProp><boolProp name="keepAlive">true</boolProp><stringProp name="password">123456</stringProp><stringProp name="poolMax">0</stringProp><boolProp name="preinit">false</boolProp><stringProp name="timeout">10000</stringProp><stringProp name="transactionIsolation">DEFAULT</stringProp><stringProp name="trimInterval">60000</stringProp><stringProp name="username">system</stringProp></JDBCDataSource>

三、负载均衡测试结果
如下所示,在jmeter启动20个thread压测,其中集群两个节点负载分配如下,一个节点客户端的连接数为11,另外一个节点为9,基本实现了集群的负载均衡:

集群状态:

1、查看节点一客户端连接进程

2、统计客户端访问数据库进程
node208:

node209:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/869551.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

{LOJ #6041. 「雅礼集训 2017 Day7」事情的相似度 题解

\(\text{LOJ \#6041. 「雅礼集训 2017 Day7」事情的相似度 题解}\) 解法一 由 parent 树的性质得到,前缀 \(s_i,s_j\) 的最长公共后缀实质上就是 \(i,j\) 在 SAM 中的 \(\operatorname{LCA}\) 在 SAM 中的 \(\operatorname{len}\)。让我们考虑如何处理 \((l,r)\) 区间内的询问…

解决Hyper-V保留端口导致各种端口占用报错的问题

0.有时候在本地启用一个服务比如MySQL服务,或者在启用IDEA的调试的时候,或者在本地启用一个监听端口的时候可能会出现监听失败的情况,经过查找之后会发现并没有应用占用相应的端口。 1.经过查找发现其实是在启用了Hyper-V之后系统会保留一些端口,这些端口如果包含了你应用要…

D. Madoka and The Corruption Scheme -- (贪心,组合数学,构造)

题目链接:Problem - D - Codeforces 题目大意: 一共n轮比赛,有\(2^n\)个参赛者,第\(i\)轮有\(2^{n - i}\) 场比赛,Madoka能安排第一局的比赛,她想让最后的赢家编号更小,主办方最多有k次操作,能修改任意每一场比赛的获胜情况,可以让最终赢家编号更 大,求Madoka在主办方…

PHP语法基础

PHP语法基础php文档拓展名是.phpphp文件通常包含html标签以及一些php脚本运行代码 ,注意:html js css可以在php文件执行但是,php不能在html js css在php文件执行php语法用;结尾 <!DOCTYPE html> <html> <body> <h1>我的第一张php页面><h1>…

本地打包docker images并上传到服务器.250115

情景: 服务器docker Pull 拉不下来 docker pull easzlab/kubeasz-k8s-bin:v1.31.2 Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers) 2025-01-14 17:06:35 [ez…

包豪斯学院

包豪斯学院(Bauhaus)是20世纪最具影响力的艺术与设计学府之一,创立于1919年,由建筑师沃尔特格罗皮乌斯(Walter Gropius)在德国魏玛建立。作为现代主义设计的先锋,包豪斯不仅在建筑、工艺、艺术和设计等领域开创了新局面,其设计理念更是深刻影响了全球的艺术与工业生产方…

主机PHP版本过低导致网页无法正常运行的解决办法

问题描述: 用户发现其主机上的PHP版本过低,导致某些功能无法正常使用,影响了网站的整体性能。此外,用户询问是否可以通过升级主机获得免费域名赠品,以及数据库空间不足的问题。 解决方案: 针对您遇到的主机PHP版本过低的问题,这里提供一些解决方案和建议,帮助您顺利升级…

如何解决网站在多台电脑上打开速度慢的问题

问题描述: 用户反馈,其家庭和单位的电脑在访问某个特定域名时速度非常慢,但手机端访问速度正常。此外,用户还提到服务器存在大量漏洞,担心网站安全问题,并询问如何处理这些漏洞。 解决方案: 针对您提到的家庭和单位电脑访问域名速度慢的问题,我们首先需要排查以下几个方…

如何处理宝塔面板升级失败及账户密码重置?

针对您遇到的宝塔面板升级失败以及账户密码重置的问题,我们将为您提供详细的解决方案。 宝塔面板升级失败 宝塔面板升级失败可能是由多种原因引起的,常见的原因包括但不限于以下几点:网络连接不稳定:在升级过程中,如果网络连接中断或者速度过慢,可能会导致下载更新包失败…

升级建站助手后原有站点无法访问怎么办?

关于您提到的升级建站助手后原有站点无法访问的问题,我们将为您提供详细的解决方案。 分析问题原因 首先,我们需要明确几个关键点来帮助分析问题的原因:建站助手与宝塔面板的关系:建站助手和宝塔面板都是用于管理和部署网站的应用程序,但它们之间可能存在功能上的重叠或冲…

补充

补充重要知识 目录补充重要知识防脱发神器颜色的alpha通道尺寸的百分比最大最小宽高什么时候使用绝对定位fixed和absolute的区别伪类选择器contenteditable属性table 元素 防脱发神器 一图胜千言使用border-box控制尺寸更加直观,因此,很多网站都会加入下面的代码 * {margin: …