package test;
import java.util.Properties;
import javax.sql.DataSource;
public class TestPerformance {
public static final String DB_NAME = "root";
public static final String DB_PWD = "123456";
public static final String DB_URL = "jdbc:mysql://127.0.0.1:3306/test";
// public static final String DB_NAME = "test";
// public static final String DB_PWD = "test";
// public static final String DB_URL = "jdbc:mysql://10.60.32.182:3306/test";
public static final String DRIVER_CLASSNAME = "com.mysql.jdbc.Driver";
public static final int MAX_ACTIVE = 100;
public static final int MIN_ACTIVE = 10;
public static final int INIT_SIZE = 10;
private static void testDBCP(String sql, int threadCount, int executeCount) {
// init DataSource
DataSource dataSource = DBCP.getDatasource();
System.out.println("DBCP start : " + System.currentTimeMillis());
for (int i = 0; i < threadCount; i++) {
new Execute(sql, executeCount, dataSource).start();
}
}
private static void testC3P0(String sql, int threadCount, int executeCount) {
// init DataSource
DataSource dataSource = C3P0.getDatasource();
System.out.println("C3P0 start : " + System.currentTimeMillis());
for (int i = 0; i < threadCount; i++) {
new Execute(sql, executeCount, dataSource).start();
}
}
private static void testTomcatJDBC(String sql, int threadCount, int executeCount) {
// init DataSource
DataSource dataSource = TomcatJDBC.getDatasource();
System.out.println("TomcatJDBC start : " + System.currentTimeMillis());
for (int i = 0; i < threadCount; i++) {
new Execute(sql, executeCount, dataSource).start();
}
}
private static void testProxool(String sql, int threadCount, int executeCount) {
// init
try {
Class.forName("org.logicalcobwebs.proxool.ProxoolDriver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
Properties properties = new Properties();
properties.setProperty("proxool.maximum-connection-count", "20");
properties.setProperty("proxool.house-keeping-test-sql", "select CURRENT_DATE");
properties.setProperty("user", "root");
properties.setProperty("password", "123456");
String alias = "aub";
String driverClass = "com.mysql.jdbc.Driver";
String driverUrl = "jdbc:mysql://localhost:3306/test";
// String url = "proxool." + alias + ":" + driverClass + ":" +
// driverUrl;
String url = "proxool." + alias + ":" + driverClass + ":" + driverUrl;
long start;
long end;
long executionTime;
start = System.currentTimeMillis();
for (int i = 0; i < threadCount; i++) {
new Proxool(sql, executeCount, url, properties).start();
}
end = System.currentTimeMillis();
executionTime = end - start;
System.out.println("Proxool total : " + executionTime + " ms");
System.out.println("Proxool average: " + executionTime / (threadCount * executeCount) + " ms");
}
public static void main(String[] args) {
if (args.length != 4) {
System.out.println("args lenth error : " + args.length);
return;
}
int type = Integer.valueOf(args[0]);
int threadCount = Integer.valueOf(args[1]);
int executeCount = Integer.valueOf(args[2]);
String sql = args[3];
System.out.println("type : " + type);
System.out.println("threadCount : " + threadCount);
System.out.println("executeCount: " + executeCount);
System.out.println("sql : " + sql);
switch (type) {
case 1:
System.out.println("===================================");
testDBCP(sql, threadCount, executeCount);
break;
case 2:
System.out.println("===================================");
testC3P0(sql, threadCount, executeCount);
break;
case 3:
System.out.println("===================================");
testTomcatJDBC(sql, threadCount, executeCount);
break;
case 4:
System.out.println("===================================");
testProxool(sql, threadCount, executeCount);
break;
default:
System.out.println("===================================");
System.out.println("unkown type : " + type);
break;
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
DBCP,C3P0,Tomcat_JDBC 性能及稳定性测试代码
共16个文件
java:8个
jar:8个
5星 · 超过95%的资源 需积分: 12 43 下载量 32 浏览量
2014-09-18
16:31:24
上传
评论 2
收藏 1.87MB ZIP 举报
温馨提示
DBCP,C3P0,Tomcat_JDBC 性能及稳定性测试代码,和博客DBCP,C3P0,Tomcat_JDBC 性能及稳定性测试一起,单看代码的人慎下
资源推荐
资源详情
资源评论
收起资源包目录
2978849_1332565150.zip (16个子文件)
src
test
TomcatJDBC.java 2KB
C3P0.java 1KB
TestStability.java 2KB
TestWacthPool.java 2KB
DBCP.java 2KB
Proxool.java 1KB
Execute.java 1KB
TestPerformance.java 4KB
lib
proxool-0.9.1.jar 196KB
proxool-cglib.jar 327KB
commons-pool-1.5.6.jar 98KB
c3p0-0.9.1.2.jar 596KB
commons-dbcp-1.4.jar 157KB
mysql-connector-java-5.0.8-bin.jar 528KB
tomcat-juli.jar 37KB
tomcat-jdbc.jar 113KB
共 16 条
- 1
资源评论
- wf0etp882017-12-20很好,正在调试
- a11780166522015-04-14好不错。代码好的,不知道怎么回事,自己没有调通。正在继续努力调通!谢谢楼主贡献
kjma
- 粉丝: 9
- 资源: 27
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功