MySQL进阶45讲【21】MySQL有哪些“饮鸩止渴”提高性能的方法 梦里梦外; 2024-05-07 22:26 48阅读 0赞 ## 1 前言 ## 不知道大家在实际运维过程中有没有碰到这样的情景:业务高峰期,生产环境的MySQL压力太大,没法正常响应,需要短期内、临时性地提升一些性能。 当MySQL压力太大时,用户的开发负责人说,不管用什么方案,让业务先跑起来再说。 但,如果是无损方案的话,肯定不需要等到这个时候才上场。今天我们就来聊聊这些临时方案,并着重说一说它们可能存在的风险。 ## 2 短连接风暴 ## 正常的短连接模式就是连接到数据库后,执行很少的SQL语句就断开,下次需要的时候再重连。如果使用的是短连接,在业务高峰期的时候,就可能出现连接数突然暴涨的情况。 在[MySQL进阶45讲【1】基础架构:一条SQL查询语句是如何执行的?][MySQL_45_1_SQL]这篇文章中说过,MySQL建立连接的过程,成本是很高的。除了正常的网络连接三次握手外,还需要做登录权限判断和获得这个连接的数据读写权限。 在数据库压力比较小的时候,这些额外的成本并不明显。 但是,短连接模型存在一个风险,就是一旦数据库处理得慢一些,连接数就会暴涨。max\_connections参数,用来控制一个MySQL实例同时存在的连接数的上限,超过这个值,系统就会拒绝接下来的连接请求,并报错提示“Too many connections”。对于被拒绝连接的请求来说,从业务角度看就是数据库不可用。 在机器负载比较高的时候,处理现有请求的时间变长,每个连接保持的时间也更长。这时,再有新建连 [MySQL_45_1_SQL]: https://blog.csdn.net/qq_37284798/article/details/135594706
相关 MySQL进阶45讲【14】count(*)这么慢,该怎么办? MySQL进阶45讲【14】count(*)这么慢,该怎么办? 骑猪看日落/ 2024年05月07日 22:32/ 0 赞/ 65 阅读
相关 MySQL进阶45讲【10】MySQL为什么有时候会选错索引? MySQL进阶45讲【10】MySQL为什么有时候会选错索引? 绝地灬酷狼/ 2024年05月07日 22:31/ 0 赞/ 81 阅读
相关 MySQL进阶45讲【23】MySQL是怎么保证主备一致的? MySQL进阶45讲【23】MySQL是怎么保证主备一致的? 柔光的暖阳◎/ 2024年05月07日 22:27/ 0 赞/ 62 阅读
相关 MySQL进阶45讲【21】MySQL有哪些“饮鸩止渴”提高性能的方法 MySQL进阶45讲【21】MySQL有哪些“饮鸩止渴”提高性能的方法 梦里梦外;/ 2024年05月07日 22:26/ 0 赞/ 49 阅读
相关 提高MySQL性能的方法 一、问题的提出 在应用系统开发初期,由于开发数据库数据比较少,对于查询SQL语句,复杂视图的的编写等体会不出SQL语句各种写法的性能优劣,但是如果将应用系统提交实际应用后,随 我不是女神ヾ/ 2022年09月20日 08:44/ 0 赞/ 202 阅读
还没有评论,来说两句吧...