MyCAT-1.4-RC性能测试(初步施工)

倒腾了好久才腾出手来测试MyCAT的性能如何,不废话,上干货
测试环境:虚拟机

主库:
CPU:Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz,逻辑核心8个

内存:32GB

硬盘:250G

从库:

CPU:Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz,逻辑核心8个

内存:32GB

硬盘:250G

采用MyCAT-1.4-RC版本,2015-06-17发布的,最新是06-19发布的版本
测试工具:sysbench-0.5,修改了oltp测试的脚本,让sysbench能够在MyCAT上进行测试
MySQL版本:

测试过程中的配置:使用远程连接的方式;使用128线程并发;测试数据为五张表,每一张表1000W行随机数据;开启热点数据模式;开启读写混合;关闭事务,使用了autocomment;MyCAT使用了读写分离
测试表拥有统一的结构,

对比项目:(A)mysql单库 vs (B)MyCAT-分库全局表 vs (C)MyCAT分表分库
由于某些原因,只跑了一段时间就结束了测试,截图部分测试结果,因为没有开启事务,所以TPS均为0,就不截图了,测试过程中都没有出现error和reconnect

(A)Mysql单库结果:

(B)MyCAT分库全局表结果:

(C)MyCAT分库分表结果:

测试项目(A)  
其中主库MySQL的线程CPU占有率超过了300%,IO等待超过30%,并且出现了性能抖动,基本可以认为已经给到了最大压力

测试项目(B)  
同A

测试项目(C)   主库线程CPU占有率超过150%,从库的线程CPU占有率超过240%,两个库的IO等待都超过了25%;值得注意的是,MyCAT所在的服务器出现了用户CPU占有率100%的情况,后期可以考虑更换机器进行进一步的测试

初步测试结果总结:
MyCAT全局表性能被腰斩还要再给一刀,突出一个惨,这么惨的原因目前未知;
分库分表以后,虽然是由两个库同时参与了测试,不过效果比预料中的要好,之前开启事务导致读写分离失败的时候,分库分表几乎也是性能腰斩的局面;考虑到MyCAT的服务器出现了CPU:100%us的现象,也许是MyCAT服务器本身限制了分库分表的性能,所以还需要后期更换环境来进行详细的测试

--------------------------------------------------------------------------------------------测试结果比预想的好,Over~----------------------------------------------------------------------------------------------------
PS:开始测试工作了的话,大概server的调优也快了....?(? ???ω??? ?)?估计.....;有关MyCAT的资料参考博文http://blog.itpub.net/29510932/viewspace-1664499/
PPS:顺便吐槽MyCAT对于复杂的SQL支持还需要继续改进....._(:з」∠)_

时间: 2024-10-17 23:31:11

MyCAT-1.4-RC性能测试(初步施工)的相关文章

综合布线施工的技术交底

技术交底是综合布线施工技术准备的必要和重要环节之一.技术交底是指由设计方和施工方技术负责人员将有关工程施工的基本情况.设计思想.施工图纸.施工及验收规范.施工方案.施工组织设计.施工安全要求及措施等方面对施工人员进行全面的介绍,使参与工程施工的人员对工程设计情况.建筑结构特点.技术要求和施工工艺等方面有较好的了解掌握,以利于科学地组织施工和合理地安排工序,避免施工操作差错的发生,确保工程质量的优良. 交底的分类 综合布线施工的技术交底必须全面细致,对工程实际情况要十分清楚,要明确各部位需注意的实

系统吞吐量(TPS)、用户并发量、性能测试概念和公式

PS:下面是性能测试的主要概念和计算公式,记录下: 一.系统吞度量要素:   一个系统的吞度量(承压能力)与request对CPU的消耗.外部接口.IO等等紧密关联. 单个reqeust 对CPU消耗越高,外部系统接口.IO影响速度越慢,系统吞吐能力越低,反之越高. 系统吞吐量几个重要参数:QPS(TPS).并发数.响应时间         QPS(TPS):每秒钟request/事务 数量         并发数: 系统同时处理的request/事务数         响应时间:  一般取平均

《全栈性能测试修炼宝典 JMeter实战》—第2章 2.3节性能测试成功与失败要素

2.3 性能测试成功与失败要素 性能测试上手难度比较高,是一门融合测试.开发.运维.需求调研.架构.协调管理等综合技能的学科,掌握一门性能测试工具对于性能测试来说只是万里长征的第一步,没有一定的需求.开发和运维专业能力,往往会吃一些苦头. 性能测试有几大难点: (1)需求分析: (2)场景设计: (3)性能诊断调优. (4)环境搭建和模拟 往往很多性能测试从业者在需求分析方面没有做到位,不能准确地预估用户行为:在场景上不能复现用户操作,无法把需求体现在脚本和场景设计上,无法模拟真实的系统负载:这

HBase写性能初步测试

背景 刚接触HBase,在本机上对线下HBase集群做了初步的写性能测试,下面对测试内容做详细说明. 说明 HBase环境 0.96版本,8台region server,默认配置   写数据说明 单column family,两个column qualifier的值为字符串+随机8位正整数,Row Key为两个quailifer值相连后串上随机Long 比如:val1 = dd1977285, val2 =cc6549921, rowkey = rondom.nextLong() + val1

性能测试笔记系列之性能测试的组织

性能测试的进行,不同的公司不同的项目配置的人员不同,有的可能只有一个性能测试人员全权负责,有的可能配置的人员比较正规,也有可能是一些非性能测试人员完成性能测试任务,下面介绍下性能测试团队的一般人员构成(或者说标准人员构成): 项目测试经理:主要负责整个测试项目,对项目的进度,其具体的职责包括确定测试目标,指定测试计划,监控和管理性能测试的进行以及对性能测试结果的评估等. 测试设计人员:主要是设计测试方案和用例. 测试开发人员:主要实现测试设计人员设计的方案和用例,负责脚本的维护及测试过程中性能指

利用LoadRunner编写socket性能测试脚本

一.概述 Loadrunner拥有极为丰富的工具箱,供予我们制造出各种奇妙魔法的能力.其中就有此次要讨论的socket套接字操作. 二.socket概述 socket是操作系统中I/O系统的网络延伸部分,它扩展了操作系统的基本I/O到网络通信,使进程和机器之间的通信成为可能.如果想完全地理解socket在Loadrunner中如何工作的,熟悉一些关于它的历史会很有帮助. 当前常用的socket,最早起源于BSD UNIX类的操作系统.在UNIX系统上,比如BSD,把对网络的支持加入操作系统,以一

手机性能测试小结

1.测试范围 关于性能测试范围的框架图 2.性能测试项目 2.1 模拟器测试项目 2.1.1 时间相关项目 2.1.1.1 长时间待机项目 ◆ 手机在通过长时间待机后(时间范围需要讨论):手机的各个功能是否正常(各个功能包括测试规程里手机的所有功能,测试功能范围需要讨论,暂时定为只初步实现功能)(由于手机可能由于电量不足不足以完成所有功能的测试,故最好选择几台机器同时进行该项目测试) ◆ 手机长时间CS业务(时间范围需要讨论):手机电池是否发热:CS业务未中止前是否功能正常:CS业务中止后其他功

性能测试知多少----性能测试分类之我见

从这一篇开始,虫师向性能方面发力.翻看自己的博客,最早的时候热衷于jmeter,于是写了几篇图文并茂的文章(其实,主要是操作截图加文字 描述),之后,由于看到好多朋友关于性能的知识什么都不知道,下载个loadrunner 就说要做性能测试,结果可想而知,遇到各种概念与使用问题.于是写了<在做性能测试之前需要知道什么><在做性能测试之后需要知道什么>,关于loadrunner的我没有写一篇博客,因为介绍loadrunner的网站.资料.书籍和视频太多了.我想这个系列我也会把关注点放在

用Selenium WebDriver+Grid2实现浏览器端性能测试

在 Web 2.0 应用中,页面装载时间和浏览器渲染时间将成为决定性能的关键因素.我们在测试过程中不仅需要手动触发性能测试工具,而且需要模仿不同的用户行为,包括不同的浏览器.不同的网络条件和不同的使用习惯.在这种情况下我们需要新的方法与工具来覆盖特别是浏览器端的性能测试.用 Selenium WebDriver + Grid2 可以解决浏览器端性能测试中的自动化和并发性问题.本文介绍了这种新的测试框架和脚本的开发过程,并结合案例给出了具体的代码和结果分析.使用 Selenium WebDrive