我正在研究生产应用程序中Sequalize的可扩展性,特别是increment
函数,以查看当一行可以同时多次更新时(例如,一排排的东西)。我的问题是,对于可以并发的这些小额外操作,是否可以信任sequalize increment
运算符?
我们在后端使用Postgres,但我不熟悉Postgres的内部以及如何处理这种类型的场景(如果重要的话,heroku postgres将是生产主机)。
sql由Sequealize根据代码注释运行
SET column = column + X
答案 0 :(得分:2)
如果没有完整的SQL示例,很难说,但我会说这可能会序列化在同一个对象上调用它的所有事务。
如果更新对象,则db将获取仅在提交/回滚时释放的行更新锁。其他更新/删除阻止此锁定,直到第一个tx提交或回滚。