You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by zh...@apache.org on 2020/02/21 09:41:42 UTC
[incubator-shardingsphere-benchmark] branch master updated: add
mysql perf
This is an automated email from the ASF dual-hosted git repository.
zhaoyanan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-shardingsphere-benchmark.git
The following commit(s) were added to refs/heads/master by this push:
new 4148126 add mysql perf
4148126 is described below
commit 4148126c92150e6537928c643bd2f24d02507e20
Author: nancyzrh <zh...@126.com>
AuthorDate: Fri Feb 21 17:41:24 2020 +0800
add mysql perf
---
.../src/main/java/jdbc/perf/JdbcSelect.java | 56 +++++++++++++++++++++-
.../src/main/java/jdbc/perf/JdbcWrite.java | 43 ++++++++++++++++-
.../src/main/java/jdbc/perf/JdbcWriteRead.java | 44 ++++++++++++++++-
.../java/service/util/config/DataSourceUtil.java | 19 +++++++-
4 files changed, 158 insertions(+), 4 deletions(-)
diff --git a/shardingsphere-benchmark/src/main/java/jdbc/perf/JdbcSelect.java b/shardingsphere-benchmark/src/main/java/jdbc/perf/JdbcSelect.java
index d3d2217..ac064f5 100644
--- a/shardingsphere-benchmark/src/main/java/jdbc/perf/JdbcSelect.java
+++ b/shardingsphere-benchmark/src/main/java/jdbc/perf/JdbcSelect.java
@@ -17,5 +17,59 @@
package jdbc.perf;
-public class JdbcSelect {
+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 perfstmt.ShardingPerfStmt;
+import service.util.config.DataSourceUtil;
+
+import java.sql.SQLException;
+
+public class JdbcSelect extends AbstractJavaSamplerClient {
+ private static final String SELECT_STMT = ShardingPerfStmt.SELECT_STMT.getValue();
+
+ static {
+ DataSourceUtil.createDataSource("###", "sharding_db", "###", 3306, "###");
+ }
+
+ /**
+ * get default params.
+ * @return null
+ */
+ @Override
+ public Arguments getDefaultParameters() {
+ return null;
+ }
+
+ /**
+ * setup.
+ * @param context context
+ */
+ @Override
+ public void setupTest(JavaSamplerContext context) {
+ }
+
+ /**
+ * run test.
+ * @param context context
+ * @return sample res
+ */
+ @Override
+ public SampleResult runTest(JavaSamplerContext context) {
+ SampleResult results = new SampleResult();
+ results.setSampleLabel("JdbcSelect");
+ results.sampleStart();
+ try {
+ DataSourceUtil.getSelectRes(SELECT_STMT, "sharding_db");
+ } catch (SQLException ex) {
+ results.setSuccessful(false);
+ return results;
+ } finally {
+ results.sampleEnd();
+ }
+ results.setSuccessful(true);
+ return results;
+ }
}
+
diff --git a/shardingsphere-benchmark/src/main/java/jdbc/perf/JdbcWrite.java b/shardingsphere-benchmark/src/main/java/jdbc/perf/JdbcWrite.java
index 95dfd55..863fb31 100644
--- a/shardingsphere-benchmark/src/main/java/jdbc/perf/JdbcWrite.java
+++ b/shardingsphere-benchmark/src/main/java/jdbc/perf/JdbcWrite.java
@@ -16,5 +16,46 @@
*/
package jdbc.perf;
-public class JdbcWrite {
+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 service.util.config.DataSourceUtil;
+
+import java.sql.SQLException;
+
+/**
+ * for mysql insert+update+delete
+ */
+public class JdbcWrite extends AbstractJavaSamplerClient {
+ static {
+ DataSourceUtil.createDataSource("###", "sharding_db", "###", 3306, "###");
+ }
+
+ @Override
+ public Arguments getDefaultParameters() {
+ return null;
+ }
+
+ @Override
+ public void setupTest(JavaSamplerContext context) {
+ }
+
+ @Override
+ public SampleResult runTest(JavaSamplerContext context) {
+ SampleResult results = new SampleResult();
+ results.setSampleLabel("JdbcWrite");
+ results.sampleStart();
+ try {
+ DataSourceUtil.writeOp( "sharding_db");
+ } catch (SQLException ex) {
+ results.setSuccessful(false);
+ return results;
+ } finally {
+ results.sampleEnd();
+ }
+ results.setSuccessful(true);
+ return results;
+ }
}
+
diff --git a/shardingsphere-benchmark/src/main/java/jdbc/perf/JdbcWriteRead.java b/shardingsphere-benchmark/src/main/java/jdbc/perf/JdbcWriteRead.java
index 455677e..df521d0 100644
--- a/shardingsphere-benchmark/src/main/java/jdbc/perf/JdbcWriteRead.java
+++ b/shardingsphere-benchmark/src/main/java/jdbc/perf/JdbcWriteRead.java
@@ -17,5 +17,47 @@
package jdbc.perf;
-public class JdbcWriteRead {
+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 service.util.config.DataSourceUtil;
+
+import java.sql.SQLException;
+
+/**
+ * for mysql compare in master slave scene
+ */
+public class JdbcWriteRead extends AbstractJavaSamplerClient {
+ static {
+ DataSourceUtil.createDataSource("###", "sharding_db", "###", 3306, "###");
+ }
+
+ @Override
+ public Arguments getDefaultParameters() {
+ return null;
+ }
+
+ @Override
+ public void setupTest(JavaSamplerContext context) {
+ }
+
+ @Override
+ public SampleResult runTest(JavaSamplerContext context) {
+ SampleResult results = new SampleResult();
+ results.setSampleLabel("JdbcWriteRead");
+ results.sampleStart();
+ try {
+ DataSourceUtil.writeReadOp( "sharding_db");
+ } catch (SQLException ex) {
+ results.setSuccessful(false);
+ return results;
+ } finally {
+ results.sampleEnd();
+ }
+ results.setSuccessful(true);
+ return results;
+ }
}
+
+
diff --git a/shardingsphere-benchmark/src/main/java/service/util/config/DataSourceUtil.java b/shardingsphere-benchmark/src/main/java/service/util/config/DataSourceUtil.java
index 5f9841d..b5dec38 100644
--- a/shardingsphere-benchmark/src/main/java/service/util/config/DataSourceUtil.java
+++ b/shardingsphere-benchmark/src/main/java/service/util/config/DataSourceUtil.java
@@ -111,6 +111,11 @@ public class DataSourceUtil {
}
}
+ /**
+ * for mysql compare without master slave scene
+ * @param datasource
+ * @throws SQLException
+ */
public static void writeOp(final String datasource) throws SQLException {
String sql = "INSERT INTO ssperf (k,c,pad) VALUES (?,?,?)";
Connection connection = null;
@@ -142,7 +147,19 @@ public class DataSourceUtil {
} finally {
connection.close();
}
-
+ }
+
+ /**
+ * for select
+ * @param sql sql stmt
+ * @param datasource dataSource name
+ * @throws SQLException
+ */
+ public static void getSelectRes(final String sql, String datasource) throws SQLException {
+ try (Connection connection = getDataSource(datasource).getConnection();
+ PreparedStatement preparedStatement = connection.prepareStatement(sql)) {
+ ResultSet resultSet = preparedStatement.executeQuery();
+ }
}
}