我有 2 个进程通过表充当生产者/消费者。
一个进程仅向表中插入,而另一个进程对新记录执行SELECT,并在完成标记时对这些记录执行UPDATE他们完成了。
这种情况不断发生。
据我所知,这个简单的交互不需要任何锁定或事务。我说得对吗?
我是不是忽略了什么?
最佳答案
我想说的首要考虑是多个工作人员检索同一行的情况。
UPDATE 和 SELECT 操作本身应该没问题,但如果您有多个工作人员通过同一个表上的 SELECT 进行消费,那么您可能会让两个工作人员同时处理同一行。
如果每个工作人员都需要处理单独的行,如果有一个重要的工作单元与您的进程相关联,则可能需要锁定 SELECT 并仔细考虑死锁。
关于mysql - 通过 mysql 的生产者/消费者模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22795246/