在我的业务逻辑中,有一个函数通过随机函数创建一个唯一值(它是一个会话 id)。
我必须确定,在将会话 ID 存储到数据库之前,它们是唯一的。所以我正在生成新的会话 id,直到我找到一个,它还没有在数据库中。但是在检查数据库中现有的会话 ID 和编写它之间可能存在竞争条件。
数据库中的写入和读取功能使用两个不同的连接。我该如何管理?
我不能使用自动增量,因为下一个会话应该是不可猜测的。
在我的业务逻辑中,有一个函数通过随机函数创建一个唯一值(它是一个会话 id)。
我必须确定,在将会话 ID 存储到数据库之前,它们是唯一的。所以我正在生成新的会话 id,直到我找到一个,它还没有在数据库中。但是在检查数据库中现有的会话 ID 和编写它之间可能存在竞争条件。
数据库中的写入和读取功能使用两个不同的连接。我该如何管理?
我不能使用自动增量,因为下一个会话应该是不可猜测的。