服务端常见超时问题

  1. kafka listener 超时

max.poll.interval.ms 默认5分钟 listener 拉取消息间隔,超过这个时间会引起rebalance,重试,要求我们必须在5分钟内完成,太长时间的不可以用listener 处理,要改用异步job

  1. mysql 锁表超时

锁表超时 innodb_lock_wait_timeout =60 秒 超过这个时间 事务会中断重试,要求我们对数据库的操作事务要在60秒内完成,特别是对批量处理的,for 循环的要保证能在60秒内完成

报错信息 com.mysql.jdbc.exceptions.jdbc4.MySQLTransactionRollbackException: Lock wait timeout exceeded; try restarting transaction
Error Code: 1205

  1. redis 全局锁超时

redis 全局锁可以设置锁的最大持有时间,超过了就自动释放了

  1. dubbo调用超时

默认dubbo调用超时1秒, 正常情况下一个调用1秒中已经足够,如果有dubbo 调用超时,必须检查provider 代码是否有问题,是否可以优化,不要轻易去更改timeout时间,可能隐藏问题

配置可以在 provider 方也可以在consumer方 ,以consumer方为优先

样例

<dubbo:reference id=“aService”
interface=“com.joshua.AServiceInterface”
group=“${dubbo.group}” check=“false” retries=“0” timeout=“60000” />

  1. http请求超时

tomcat connectionTimeout=“20000” 超过20秒就释放,浏览器会重试

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值