锁定10行进行处理,然后在springjpa中删除



我有一个mysql表,它由两个进程附加,两个独立的进程正在从表中读取以处理记录。写入后的记录不会更新。

每个读取过程每小时醒来一次,检查是否存在任何记录并处理这些记录。处理完成后,需要删除记录,以便不再处理这些记录。

我将springJPA与mysql结合使用。现在我正在考虑使用PESIMISTIC_WRITE锁来查询&一次锁定10条记录,然后将其删除。在使用PESIMISTIC_WRITE锁时,我可以使用Pageable查询记录吗?而且,Pageable会只锁定一页记录吗?

我想了解一下这种方法,以及其他人是否尝试过这种方法。如果有任何反馈,我将不胜感激。

谨致问候,灰分

我最终使用LIMIT每次获得10行。在我的SQL中,我还添加了";FOR UPDATE";以锁定它们。然后我处理了这些行,并删除了同一事务中的10行。

最新更新