当前位置: 首页 > news >正文

天津网站设计网站制作重庆合川企业网站建设联系电话

天津网站设计网站制作,重庆合川企业网站建设联系电话,建大网络,长春市经济开发区人才网文章目录 介绍原因分析:修改代码一波三折#xff0c;再次出现问题 介绍 遇到了一个很有意思的问题。 在service层加了事务。 为了防止并发#xff0c;在component层加了分布式锁。 先根据前端传入的id#xff0c;在数据库中使用queryA()查到一个key然后对这个key进行加锁再… 文章目录 介绍原因分析:修改代码一波三折再次出现问题 介绍 遇到了一个很有意思的问题。 在service层加了事务。 为了防止并发在component层加了分布式锁。 先根据前端传入的id在数据库中使用queryA()查到一个key然后对这个key进行加锁再次调用queryA()。目的是为了做校验更新数据库在component层释放锁 最终现象是加锁失败。 线程A获取到了锁然后执行下面的操作。 线程B等待这把锁。 线程A执行完了之后释放锁。 线程B查数据库依然校验成功。按理说A操作了数据线程B的校验应该不通过。 实际上线程B没有读到线程A更新后的数据 原因分析: 数据库mysql的隔离级别是 可重复读。 那么在线程B等待锁的时候已经缓存了一份数据库连接了。 此时A更新了数据然后释放锁假设提交了事务由于是可重复读级别的事务隔离所以线程B此时无论如何都读不出来线程A修改的数据。 后来解决方法就是让前端传key进来。 修改代码 也就是代码改成了 1. 前端传入key 2. 然后对这个key进行加锁 3. 调用数据库的queryA()方法。目的是为了做校验 4. 更新数据库 5. 在component层释放锁此时线程A获取到了锁直到事务提交了线程B才开始数据库连接此时正常 一波三折再次出现问题 经过上面的分析 现在我也怀疑是不是在事务提交前就释放了锁呢
http://www.yayakq.cn/news/4628/

相关文章:

  • 朵以服饰 网站建设服装设计学校
  • wordpress google font大连seo排名外包
  • 商务网站建设考试题库泉州市第一建设有限公司网站
  • wordpress网站修改域名开网店怎么找货源啊
  • 网站建设突出特色wordpress 内容 只调图片大小
  • 怀来住房和城乡建设局网站网站不备案百度收录吗
  • 什么网站可以做进出口买卖四川蓉和建设公司网站
  • php个人网站怎样做大丰住房和城乡建设局网站
  • 网站建设所用程序官网定制
  • 做p2p网站 人员配置wordpress的wp_list_cats
  • wordpress搭建视频站wordpress中文下载方法
  • 网站设计 书籍苏州网站开发找薇
  • 北京网站seo费用广告优化师没经验怎么面试
  • 免费网站模板 带后台网站做推广 建设哪种类型合适
  • 深圳专业制作网站哪个公司好58同城网站建设方案
  • 两江新区建设管理局网站wordpress购买按钮
  • 怎么做本地化网站9个广州seo推广神技
  • 普陀区建设局网站pageadmin建站系统破解版
  • 鞍山手机网站设计WordPress怎么输入代码
  • 网页设计图重庆百度优化
  • 建设图片展示网站最主流的网页制作软件
  • 网站域名如何备案谷歌浏览器手机版下载
  • linux网站管理面板小吃网站建设规划书
  • 网站 虚拟主机能做外链的产品网站
  • 中铁建设集团门户网登录网站专门卖医疗器械的网站
  • 深圳市住房和建设局网站下载定制开发网站多少钱
  • 西安蓝海网站建设wordpress 图片本地化
  • 专业做酒的网站有哪些建设官网的网站首页
  • 网站建站加盟网站设计案例方案
  • 西安哪些做网站的公司好廊坊购物网站开发设计