./test_stand_insert_perf.sh jdbc:URL/DB user password 100 file=../sql/insertTestFlow.sql
| |||||
| 跳板机 | |||||
| 用户数 | 总请求数 | 用时 | 平均响应 | CPU_AVG(Mycat) | CPU_AVG |
| 10 | 0+100W | 593S | 1686 | 15% | 70% |
| 90% | |||||
| 50% | |||||
| 100 | 100W+100W | 598S | 1672 | 15% | 70% |
| 90% | |||||
| 50% | |||||
| 200 | 200W+100W | 602S | 1661 | 15% | 70% |
| 90% | |||||
| 50% | |||||
| 300 | 300W | 报错 | |||
| 结论 | |||||
| 1.TPS最高可达到1.6K/s 2.达到300集群负载饱和 3.原因是mysql连接节点上的连接池没有空闲连接 |
./test_stand_select_perf.sh jdbc:mysql://url/db user pwd 300 10000 file=../sql/selectTestFlow.sql
| 读取 | |||||
| 跳板机 | |||||
| 用户数 | 总请求数 | 用时 | 平均响应 | CPU_AVG(Mycat) | CPU_AVG |
| 10 | 10W | 18S | 6210 | ||
| 100 | 100W | 92S | 11176 | 70% | 80% |
| 60% | |||||
| 75% | |||||
| 200 | 200W | 208S | 9855 | 80% | 80% |
| 70% | |||||
| 75% | |||||
| 300 | 300W | 1012S | 3857 | 100% | 90% |
| 70% | |||||
| 75% | |||||
| 结论 | |||||
| 1.TPS最高可达到1W/s 2.达到300集群负载饱和 3.a.原因是mysql连接节点上的连接池没有空闲连接 b.mycatCPU和内存资源不足,内存剩余1% 4.建议修改主从mysql库的连接数,适当增加; 增加硬件资源; 修改长sql时间,设置时间不能大于3S,减少线程池占用 大数据的表建议分片,datanode节点只绑定一个DB实例原因,导致不好做分片表 |
优化mycat进程数,核心数,线程缓冲区空间
| 优化前 | 优化后 | ||||||
| 用户数 | 总请求数 | 用时 | 平均响应 | 用户数 | 总请求数 | 用时 | 平均响应 |
| insert | |||||||
| 200 | 10W | 60S | 1720T/s | 200 | 10W | 56S | 1786T/s |
| select | |||||||
| 200 | 20W | 38S | 5650T/s | 200 | 20W | 19S | 12042T/s |
835

被折叠的 条评论
为什么被折叠?



