如果发生了网络抖动,事务会什么时间结束?

简介:

亲,你遇到过数据库里的表访问全部在Client Java层里看到是慢日志过吗?

亲,你遇到某个Client突然宕机,正在事务操作中的SQL,最后会回滚,但是会不会对别的Client有影响呢?

例如这样:

6917eda969a31618eb5ef8d8525ddfa21aa47a7f

X锁的事务突然中止 ,其它会话进行for update就会报错, 这种情况实际工作中,遇到一次酸爽一次。

可能发生的情况:

假如client突然发生了宕机

• 假如⽹络断开⼏秒后,client断开连接

• 假如是单网卡,发⽣了故障,client断开连接

• …

老司机开车怎么防止这个事呢?上图

e54a8e6d45b1ac54b670e9f8d4233375f85e7f68

如果事务发生了网络抖动,事务会什么时间结束呢?

1. wait_timeout超时,如果空闲等待超时wait_timeout, 则会关闭会话。 所以建议wait_timeout可以设置的短点,例如90。

2. 等待tcp超时

 ●  tcp_keepalive_time、tcp_keepalive_intvl、tcp_keepalive_probes
 ●  闲置idle(双方没有任何数据流发送往来)了 tcp_keepalive_time后,服务器内核就会尝试向客户端发送侦测包,来判断TCP连接状况(有可能客户端崩溃、强制关闭了应⽤、主机不可达等等)。如果没有收到对方的回答(ack包),则会在tcp_keepalive_intvl后再次尝试发送侦测包,直到收到对方的ack,如果⼀直没有收到对⽅的ack,⼀共会尝试tcp_keepalive_probes次,每次的间隔时间在这⾥分别是15s, 30s, 45s, 60s, 75s。如果尝试tcp_keepalive_probes,依然没有收到对方的ack包,则会丢弃该TCP连接。

3. 主动kill掉这个SQL。

 ●  关注sqlkiller
 ●  pt-kill
 ●  设置max_execution_time对SQL中SELECT语句引入执行timeout超时。

你有没有遇到这样的坑呢? 你还想不想学习一下其它的坑呢?

• 如果事务中发生了网络抖动

• 当大事务遇上备份

• ⼀个不起眼的SQL导致的性能问题

• 主从默认字符集不一致导致的从库异常

• 大量删除导致的SQL查询缓慢

• TCP重传导致的慢查

• 利用strace利器甩掉这个不该背的锅

上面这些姿势,看着是不是有一种熟悉的酸爽


原文发布时间为:2018-09-26 本文作者:王航威 本文来自云栖社区合作伙伴“老叶茶馆”,了解相关信息可以关注“ 老叶茶馆 ”。

相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
云原生实践公开课
课程大纲 开篇:如何学习并实践云原生技术 基础篇: 5 步上手 Kubernetes 进阶篇:生产环境下的 K8s 实践 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
7月前
|
监控 网络协议 Linux
使用 KubeSkoop exporter 监测和定位容器网络抖动问题
使用 KubeSkoop exporter 监测和定位容器网络抖动问题
57764 26
使用 KubeSkoop exporter 监测和定位容器网络抖动问题
|
8月前
|
运维 Prometheus Kubernetes
直播预告丨如何使用 KubeSkoop exporter 监测和定位容器网络抖动问题
直播预告丨如何使用 KubeSkoop exporter 监测和定位容器网络抖动问题
|
10月前
|
数据采集 监控 前端开发
网络抖动对重复提交的影响与解决方案
网络抖动对重复提交的影响与解决方案
245 0
|
弹性计算 监控 网络协议
深入解读云场景下的网络抖动 | 龙蜥技术
网络抖动三剑客(Pingtrace、Rtrace、Netinfo),助你快速找到系统的抖动点和原因。
深入解读云场景下的网络抖动 | 龙蜥技术
|
监控 安全 网络协议
什么?Coolbpf 不仅可以远程编译,还可以发现网络抖动! | 龙蜥技术
BPF 可移植性被定义为成功编写并通过内核验证的一个 BPF 程序,能运行在不同内核版本。
什么?Coolbpf 不仅可以远程编译,还可以发现网络抖动! | 龙蜥技术
|
缓存 弹性计算 监控
梦里花落知多少,网络抖动逃不了
这是一篇必看“小说”,一波三折的真实故事!
梦里花落知多少,网络抖动逃不了
记一次对网络抖动经典案例的分析
本文记录的是一次多团队协作处理的抖动问题的过程,由于用户的执着,也使得我们在这个案例分析得较为深入,希望对大家今后的此类案例的处理有所启发。
|
关系型数据库 MySQL 网络协议
|
网络协议 数据库
SQLServer 2012之AlwaysOn —— 指定数据同步链路,消除网络抖动导致的提交延迟问题
原文:SQLServer 2012之AlwaysOn —— 指定数据同步链路,消除网络抖动导致的提交延迟问题 事件起因:近期有研发反应,某数据库从08切换到12环境后,不定期出现写操作提交延迟的问题; 事件分析:在排除了系统资源争用等问题后,初步分析可能由于网络抖动导致同步模式alwayson节点经常出现会话超时等待提交的问题导致。
1561 0

热门文章

最新文章