关键词搜索

源码搜索 ×
×

mysql分布式锁的坑------ 墨菲定律:有可能出错的事情,终将出错

发布2019-09-01浏览3634次

详情内容

   用mysql唯一key做分布式锁, 虽然简单, 但坑太多, 来看看:

    1.  在高并发场景下, 用mysql做分布式锁, 简直是想找死。

        这种问题, 不要选mysql分布式锁, 别作死。

 

     2.  业务准备释放锁的时候, 进程被正常重启了, 或者异常崩溃了,或者掉电了, 锁永远无法释放。 这个坑, 踩过。 四个人, 通宵修数据, 呵呵哒。   墨菲定律告诉我们:有可能出错的事情,终将出错。

         这种问题,也并不是毫无办法的,有办法。

 

     3.  业务释放锁时, 如果操作mysql超时(原因多多, 比如网络原因, 比如mysql挂了), 锁释放失败, 便永远无法释放了。 这个坑, 遇到过。

       这种问题,也并不是毫无办法的,有办法。

 

     4.  当两个接口中都有加锁的代码时, 如果他们之间有调用关系, 那就呵呵哒了,直接死锁。 这个坑,遇到过。

       这种问题, 实际上就是要解决非重入锁的问题, 想办法搞成可重入的锁吧。

 

    缺点多多, 有办法完善, 但慎用。

 

 

 

 

相关技术文章

点击QQ咨询
开通会员
返回顶部
×
微信扫码支付
微信扫码支付
确定支付下载
请使用微信描二维码支付
×

提示信息

×

选择支付方式

  • 微信支付
  • 支付宝付款
确定支付下载