并发问题解决方案

1、从数据库锁机制入手

工作中遇到的第一个并发问题

问题描述:当需要向同一个用户推送多条更新消息时,每一次推送都需取一个该用户的id,这时会发生取到同一个id的现象。

解决方案:利用数据库行锁机制,具体步骤如下:

1、取值前先更新状态(更新锁,保证某一时刻只有一台实例的一个线程对某一行进行操作)并插入serialNo(作为该台实例的占有标记)

 

2、根据serialNo取id,保证每台实例只能取到自己更新的id记录。

posted @ 2017-08-07 13:00  大侠熊猫儿  阅读(199)  评论(0编辑  收藏  举报