mysql每秒最多能插入多少条数据 ? 死磕性能压测
Stopping mysql (via systemctl): mysql.service.
root@ubuntu:/home/hejinbin# /etc/init.d/mysql start
Starting mysql (via systemctl): mysql.service.
<c3p0-config> <default-config> <property name="user">root</property> <property name="password">hejinbin</property> <property name="driverClass">com.mysql.jdbc.Driver</property> <property name="jdbcUrl">jdbc:mysql://172.25.20.14:3306/Test?useUnicode=true </property> <property name="initialPoolSize">5</property> <property name="maxIdleTime">5</property> <property name="maxPoolSize">150</property> <property name="minPoolSize">5</property> </default-config> </c3p0-config>
2,JAVA测试代码
package org.test;
import java.sql.Connection;
import java.sql.ResultSet;
import java.util.concurrent.atomic.AtomicLong;
import com.mchange.v2.c3p0.ComboPooledDataSource;
import com.mchange.v2.c3p0.impl.NewProxyPreparedStatement;
/**
* hejinbin , QQ 107966750, C3P0的测试用例 2016-10-13
*/
public class C3P0Test {
public static AtomicLong id = new AtomicLong(1000000);
private static ComboPooledDataSource cpds = new ComboPooledDataSource();
public static Long queryTest() throws Exception {
Long aid = null;
Connection con = null;
try {
// 从C3P0获取连接
con = cpds.getConnection();
NewProxyPreparedStatement prepare = (NewProxyPreparedStatement) con
.prepareStatement("select * from tbl_account_info where account_id = ?");
prepare.setLong(1, 1001203);
ResultSet result = prepare.executeQuery();
if (result.next()) {
aid = (result.getLong("aid"));
}
} catch (Exception e) {
throw e;
} finally {
// 此处关闭已经被C3P0重写, 只是返还连接池
con.close();
}
return aid;
}
public static void insertTest() throws Exception {
Connection con = null;
try {
// 从C3P0获取连接
con = cpds.getConnection();
NewProxyPreparedStatement prepare = (NewProxyPreparedStatement) con.prepareStatement(
"INSERT INTO `tbl_account_info` VALUES (?, '1231232132', '何锦彬测试', '12312312', '15018711111', 'hejinbin@qq.com', '1', 'hjb_recharge', 'yyUid:12312312', '1', '', '', '', '1399882974', '1429785062', '183.60.177.229', '1464658277', '14.29.83.74', '0', '0', '1', '0', '2', '1', '0', '1', '1', '1', '1', '1', '1', '1', '', '', '2000', '0', '0', '0', '2000', '6', '0', '0', '1', '0', '1456308697', '658', null, '广东广州', '0', '0', '0', '0', '20', null, null, '1', null, '');");
prepare.setLong(1, id.incrementAndGet());
prepare.execute();
} catch (Exception e) {
throw e;
} finally {
// 此处关闭已经被C3P0重写, 只是返还连接池
con.close();
}
}
public static void main(String[] args) throws Exception {
for (int i = 0; i < 100000; i++)
insertTest();
}
}
3,jmeter压测相关代码
package org.test.bin;
import org.apache.jmeter.config.Arguments;
import org.apache.jmeter.protocol.java.sampler.AbstractJavaSamplerClient;
import org.apache.jmeter.protocol.java.sampler.JavaSamplerContext;
import org.apache.jmeter.samplers.SampleResult;
import org.test.C3P0Test;
import org.test.JDBCWthoutDBPoolTest;
/**
* hejinbin , QQ 107966750, C3P0的测试用例,放入jmeter中 2016-10-13
*/
public class JDBWithC3P0JmertRuning extends AbstractJavaSamplerClient {
// 填参数
public Arguments getDefaultParameters() {
Arguments params = new Arguments();
return params;
}
// 测试查询
// public SampleResult runTest(JavaSamplerContext arg0) {
// SampleResult sr = new SampleResult();
// try {
// sr.sampleStart();
// Long aid = C3P0Test.queryTest();
// // Long aid = 741l;
// // 逾期值
// if (aid == 741) {
// // 只有是预期值才判断查询成功
// sr.setSuccessful(true);
// } else {
// sr.setSuccessful(false);
// }
// } catch (Exception e) {
// sr.setSuccessful(false);
// e.printStackTrace();
// } finally {
// sr.sampleEnd();
// }
// return sr;
// }
public SampleResult runTest(JavaSamplerContext arg0) {
SampleResult sr = new SampleResult();
try {
sr.sampleStart();
C3P0Test.insertTest();
// 只有是预期值才判断查询成功
sr.setSuccessful(true);
} catch (Exception e) {
sr.setSuccessful(false);
e.printStackTrace();
} finally {
sr.sampleEnd();
}
return sr;
}
}
整个工程地址等下放留言区.
一切就绪, 开始死磕
Mem: 984 974 9 1 132 455
-/+ buffers/cache: 386 597
Swap: 2044 31 2013
Tasks: 175 total, 1 running, 174 sleeping, 0 stopped, 0 zombie
%Cpu(s): 15.1 us, 40.6 sy, 0.0 ni, 28.3 id, 9.0 wa, 0.0 hi, 7.0 si, 0.0 st
KiB Mem: 4038340 total, 1837716 used, 2200624 free, 151648 buffers
KiB Swap: 2094076 total, 0 used, 2094076 free. 1224640 cached Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2345 mysql 20 0 2539240 274992 13540 S 279.5 6.8 4:48.13 mysqld
Tasks: 175 total, 1 running, 174 sleeping, 0 stopped, 0 zombie
%Cpu(s): 14.2 us, 33.2 sy, 0.0 ni, 35.0 id, 11.3 wa, 0.0 hi, 6.3 si, 0.0 st
KiB Mem: 4038340 total, 2605868 used, 1432472 free, 152740 buffers
KiB Swap: 2094076 total, 0 used, 2094076 free. 1965808 cached Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2345 mysql 20 0 2540260 278508 13540 S 247.7 6.9 21:44.32 mysqld
sda 688.00 0.00 17356.00 0 17356
mysql每秒最多能插入多少条数据 ? 死磕性能压测的更多相关文章
- mysql存储过程命令行批量插入N条数据命令
原文:http://blog.csdn.net/tomcat_2014/article/details/53377924 delimiter $$ create procedure myproc () ...
- mysql一次插入多条数据
mysql一次插入多条数据: INSERT INTO hk_test(username, passwd) VALUES ('qmf2', 'qmf2'),('qmf3', 'qmf3'),('qmf4 ...
- PHP MySQL 插入多条数据
PHP MySQL 插入多条数据 使用 MySQLi 和 PDO 向 MySQL 插入多条数据 mysqli_multi_query() 函数可用来执行多条SQL语句. 以下实例向 "MyG ...
- sql每五秒插入一条数据 一次插入N条数据
1建立数据表 create table projectManage ( ID int identity primary key not null, projectName )not null, man ...
- mysql根据查询结果批量更新多条数据(插入或更新)
mysql根据查询结果批量更新多条数据(插入或更新) 1.1 前言 mysql根据查询结果执行批量更新或插入时经常会遇到1093的错误问题.基本上批量插入或新增都会涉及到子查询,mysql是建议不要对 ...
- MySQL往表里插入千条数据 存储过程
工作中遇到的问题,先记录一下,方便以后查看 存在两张表,user表和friend表 user表部分字段,如上图 friend表部分字段,如上图 往friend表插入千条数据,friend表中的user ...
- mysql命令行批量插入100条数据命令
先介绍一个关键字的使用: delimiter 定好结束符为"$$",(定义的时候需要加上一个空格) 然后最后又定义为";", MYSQL的默认结束符为" ...
- 用一条mysql语句插入多条数据
这篇文章主要介绍了在mysql中使用一条sql语句插入多条数据,效率非常高,但是原理其实很简单,希望对大家有所帮助 假如有一个数据表A: id name title addtime 如果需要插入n条数 ...
- 你向 Mysql 数据库插入 100w 条数据用了多久?
阅读本文大概需要 2 分钟. ▌目录 多线程插入(单表) 多线程插入(多表) 预处理 SQL 多值插入 SQL 事务( N 条提交一次) ▌多线程插入(单表) 问:为何对同一个表的插入多线程会比单线程 ...
随机推荐
- 在PowerShell中使用curl(Invoke-WebRequest)
前言 习惯了windows的界面模式就很难转去命令行,甚至以命令行发家的git也涌现出各种界面tool.然而命令行真的会比界面快的多,如果你是一个码农. situation:接到需求分析bug,需要访 ...
- ADO.NET对象的详解
1. Connection 类 和数据库交互,必须连接它.连接帮助指明数据库服务器.数据库名字.用户名.密码,和连接数据库所需要的其它参数.Connection对象会被Command对象使用,这样就能 ...
- 移动端1px边框
问题:移动端1px边框,看起来总是2倍的边框大小,为了解决这个问题试用过很多方法,用图片,用js判断dpr等,都不太满意, 最后找到一个还算好用的方法:伪类 + transform 原理是把原先元素的 ...
- UWP开发之Mvvmlight实践八:为什么事件注销处理要写在OnNavigatingFrom中
前一段开发UWP应用的时候因为系统返回按钮事件(SystemNavigationManager.GetForCurrentView().BackRequested)浪费了不少时间.现象就是在手机版的详 ...
- 如何利用ansible callback插件对执行结果进行解析
最近在写一个批量巡检工具,利用ansible将脚本推到各个机器上执行,然后将执行的结果以json格式返回来. 如下所示: # ansible node2 -m script -a /root/pyth ...
- java中的内部类总结
内部类不是很好理解,但说白了其实也就是一个类中还包含着另外一个类 如同一个人是由大脑.肢体.器官等身体结果组成,而内部类相当于其中的某个器官之一,例如心脏:它也有自己的属性和行为(血液.跳动) 显然, ...
- Mysql 学习之基础操作
一.表复制 1.复制表结构 将表hello的结构复制一份为表hello3 2.复制数据 a.如果两张表的结构一样且你要复制所有列的数据 mysql> insert into hello3 ...
- SQLite学习笔记(十)&&加密
随着移动互联网的发展,手机使用越来越广泛,sqlite作为手机端存储的一种解决方案,使用也非常普遍.但是sqlite本身安全特性却比较弱,比如不支持用户权限,只要能获取到数据库文件就能进行访问:另外也 ...
- ubuntu15.04 nginx1.6.5 配置虚拟主机
1 在/etc/hosts 添加host 2 在/etc/nginx/nginx.conf中查看http里的include ****** /*.conf的路径,在此路径下添加一个新的******. ...
- 类型转换器(InitBinder 初始化绑定器)
单日期格式 导入jar包 创建FirstController.java @Controller public class FirstController { /** * @param binder * ...