1

我正在使用 MySQL 和 spring jdbc 开发一个应用程序,如果我的应用程序的多个实例访问一个表以插入记录,我正在设计一个表,请记住将来

以这个场景为例。

 user
 --id
 --name
 --age
 --sex

我有三个并行运行的节点

-------------------    -------------------    ------------------- 
|  node 1         |    |  node 2         |    |  node 3         |               
|  app instance 1 |    |  app instance 2 |    |  app instance 3 |          
-------------------    -------------------    -------------------          

在这种情况下,当多个节点同时访问时如何管理我的主键user.id

  1. 在主键上使用自动增量时我会遇到问题吗?
  2. 我可以通过代码处理、增加 id 并以编程方式插入吗?我在并发期间看到了潜在的问题,但现在我正在遵循这种方法。
  3. 是否有任何其他机制来处理主键生成的并发问题。

这方面的最佳做法是什么。

编辑:-我正在使用spring jdbc批量插入,我需要通过自动增量生成id,但是使用jdbc批处理这是不可能的,因此我手动增加id并插入。

4

0 回答 0