mysql 队列 实现并发读
一个 MySQL 表可以看作是一个队列,每一行为一个元素。每次查询得到满足某个条件的最前面的一行,并将它从表中删除或者改变它的状态,使得下次查询不会得到它。在没有并发访问的情况下,简单地用 SELECT 得到一行,再用UPDATE(或者DELETE)语句修改之,就可以实现。 代码如下: SELECT * FROM targets WHERE status=’C’ LIMIT 1; UPDATE targets SET status=’D’ WHERE id=’id’; 如果有并发访问,在SELECT和UPDATE语句之间可能会存在其他地SELECT查询,导致同一行被取出多次。为了保证在并发
下载地址
用户评论