MySQL应对高tps优化 快来打我* 2022-03-22 08:44 341阅读 0赞 一般使用innodb引擎做事务管理,死锁也是经常见到的,比如秒杀场景,对一个共同的物品进行减库存,此时我们可以关闭mysql的死锁检测机制,减少单行整体服务的时间。既然关闭了死锁检测机制,我们需要减少锁的等待时间。 不过不适合死锁过多的情景,我们可以通过程序来减少死锁的存在。其次还有mysql为了事务的安全,会将提交的事务刷新到磁盘,如果改变刷盘的策略,也可以提高mysql应对高并发的情况,但是会有丢失数据和事务的情况,在系统崩溃或者断电的时候。 **sync\_binlog=0**,当事务提交之后,MySQL不做fsync之类的磁盘同步指令刷新binlog\_cache中的信息到磁盘,而让Filesystem自行决定什么时候来做同步,或者cache满了之后才同步到磁盘。这个是性能最好的。 **sync\_binlog=1**,当每进行1次事务提交之后,MySQL将进行一次fsync之类的磁盘同步指令来将binlog\_cache中的数据强制写入磁盘。 **sync\_binlog=n**,当每进行n次事务提交之后,MySQL将进行一次fsync之类的磁盘同步指令来将binlog\_cache中的数据强制写入磁盘。 注: 大多数情况下,对数据的一致性并没有很严格的要求,所以并不会把 sync\_binlog 配置成 1. 为了追求高并发,提升性能,可以设置为 100 或直接用 0. 而和 innodb\_flush\_log\_at\_trx\_commit 一样,对于支付服务这样的应用,还是比较推荐 sync\_binlog = 1. 上面文字来自:[https://www.linuxidc.com/Linux/2017-09/146671.htm][https_www.linuxidc.com_Linux_2017-09_146671.htm] 总结上面的方法是关闭死锁检测,改变刷盘策略,但是这是在特殊的情况使用,过了这个时间段要恢复安全的策略。相关参数: sync\_binlog=0 innodb\_flush\_log\_at\_trx\_commit=0 innodb\_deadlock\_detect=OFF 这篇文章作为自己知识总结,参考[https://mp.weixin.qq.com/s/U7\_3yhdmZm0iYztl9LVkzw][https_mp.weixin.qq.com_s_U7_3yhdmZm0iYztl9LVkzw] [https_www.linuxidc.com_Linux_2017-09_146671.htm]: https://www.linuxidc.com/Linux/2017-09/146671.htm [https_mp.weixin.qq.com_s_U7_3yhdmZm0iYztl9LVkzw]: https://mp.weixin.qq.com/s/U7_3yhdmZm0iYztl9LVkzw
相关 应对Java性能瓶颈的优化策略实例 Java性能瓶颈的优化策略可能会涉及到以下几个方面: 1. **代码优化**: - 重构:简化复杂的逻辑,提高代码可读性。 - 算法优化:使用更高效的数据结构和算 ╰+哭是因爲堅強的太久メ/ 2024年09月15日 04:15/ 0 赞/ 25 阅读
相关 应对并发高峰:Java高并发编程实战案例 Java作为一种流行的编程语言,尤其在处理高并发场景时表现出色。以下是一些Java高并发编程的实战案例: 1. **多线程池**: - Redis Cluster: 利 Bertha 。/ 2024年09月10日 09:24/ 0 赞/ 17 阅读
相关 高并发场景以及应对技巧&&SpringCloud高可用架构图 文章目录 高并发场景以及应对技巧 高并发现实生活中的场景 1 高并发基础 1.1 并发与并行 1 末蓝、/ 2024年02月05日 13:04/ 0 赞/ 7 阅读
相关 高并发应对策略 策略 1、在开发高并发系统时,有很多手段用来保护系统如:缓存、限流、降级 2、缓存的目的是提升系统访问速度和增大系统处理能力,可谓是抗高并发流量的银弹 3、而降 妖狐艹你老母/ 2023年06月10日 04:26/ 0 赞/ 66 阅读
相关 高并发项目应对方案 服务监控 zabbix: https://blog.csdn.net/weixin\_43822878/article/details/91569016 服务器 快来打我*/ 2022年12月26日 08:15/ 0 赞/ 118 阅读
相关 Java无锁应对高并发Atomic详解 问题: java多线程有线程安全问题,因为操作非原子,分为三步:1.读主内存的值 2.在工作内存中操作 3.回写到主内存 解决方案: 操作加锁,在写回主内存前,其他 不念不忘少年蓝@/ 2022年12月23日 02:00/ 0 赞/ 195 阅读
相关 【MySQL】索引失效以及explain应对 我们都知道在数据表中建立索引是可以增加查询的效率的,但是不知道同志们有没有注意过索引失效的情况,就是你明明建立了索引,但是却和没有建立索引的时候查询的时间是一样 迷南。/ 2022年05月18日 07:44/ 0 赞/ 310 阅读
相关 MySQL应对高tps优化 一般使用innodb引擎做事务管理,死锁也是经常见到的,比如秒杀场景,对一个共同的物品进行减库存,此时我们可以关闭mysql的死锁检测机制,减少单行整体服务的时间。既然关闭了死 快来打我*/ 2022年03月22日 08:44/ 0 赞/ 342 阅读
相关 mysql高并发优化 一、Mysql高并发处理 例子1:新增手机号码,先判断是否已经存在,如果不存在则插入,在低并发访问情况下不会发生问题,在高并发下则会插入多条数据。 解决方案:通过写sql实 た 入场券/ 2022年03月08日 05:44/ 0 赞/ 245 阅读
还没有评论,来说两句吧...