首页 > > > 在大促中什么影响了数据库性能
QPS(Query Per Second)
风险:效率低下的SQL。数据库中的性能问题80%就是由慢查询造成的。也就是大多数的数据库问题可以通过对SQL进行优化来解决。
TPS(Transition Per Second)
高并发可能导致DB连接被占满;超高CPU使用率可能因为CPU资源耗尽而出现宕机。这里并发量指的是同一时刻需要DB服务器处理请求的数量,而连接量往往比并发量大得多,因为现在的系统中每一个前端服务器(例如nginx,tomcat,apache)都会对数据库建立多个连接,而在众多的连接中往往只有几个是在请求数据库处理的,其他的大多数连接都会处于sleep状态。数据库对于允许建立的连接数目是有限的(max_connections默认为100)
磁盘IO性能突然下降(使用更快的磁盘设备,SSD,fashion IO),其他大量消耗磁盘性能的计划任务(调整计划任务,做好磁盘维护)。例如平时在主库上进行备份的,在大促的时候应该切换到从库上备份。
大多数网卡是1000mbps (bits) = 1000 / 8 = 100 MB/s(byte)
如何避免无法连接数据库的情况:
SELECT *
大表可以从2个维度来进行定义:
对于大表有2种策略:分库分表和历史数据归档
分库分表把大表分成多个小表
难点:
大表的历史数据归档,可以尽量减少业务前后端的影响。难点在于:
事务的隔离性(ISOLATION),SQL标准中定义了4种隔离级别:
SHOW VARIABLES LIKE '%iso%';
SQL
Copy
验证事务的隔离级别我们可以分别连接到两个mysql shell,在一个shell中进行插入操作

大事务的运行时间比较长,操作的数据比较多的事务。可能造成锁定太多数据,造成大量的阻塞和锁超时。回滚的时间较长,并且在回滚的过程中数据也是被锁定的。执行时间长可能造成主从延迟。
处理大事务一般有以下的策略:
原文作者:;如有侵权,请联系管理员删除。