egg icon indicating copy to clipboard operation
egg copied to clipboard

sequelize动态修改数据库信息

Open dgjlovehyz opened this issue 4 years ago • 0 comments

sequelize动态修改数据库信息出现数据混乱

  • 我在配置文件中没有设置database,而是通过登录用户访问接口的时候修改sequelize的信息,就rest api的表现来说并没有什么问题,但是在加入job以后就出现了很奇葩两种的情况:
  • 第一种
  1. 调用api1,期望数据应该存储到db1
  2. job切换了链接信息到db2
  3. api1的数据最终存储在了db2
  • 第二种
  1. job切换到db1执行,开启事务,期望data1、if(true)data2都存入db1,
  2. job切换到了db2,if(true)变成了false,导致data2没有存储

猜测

  • sequelize并没有数据库连接池,这样也可以解释上面的问题

以上问题仅仅是猜测,没有实际

可能的解决方案

  • sequelize如果没有数据库连接池,加上这个功能会不会直接修复这个问题
  • 分的库比较少的话,是否可以通过一个库对应一个worker实现

相关环境信息

  • aws ec2
  • Node v12.13.0
  • Egg 2.15.1

dgjlovehyz avatar Apr 29 '21 07:04 dgjlovehyz