起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2518|回复: 4

[用户待确认] 关于数据库并发写入的疑问

[复制链接]

181

主题

482

帖子

1056

积分

金牌会员

Rank: 6Rank: 6

积分
1056
QQ
发表于 2019-8-26 17:49:36 | 显示全部楼层 |阅读模式
如题,有一个疑问:

假如有一个电商的买入和卖出功能。在应用运行期间如果某一个用户在主动买入产品的同时,刚好他自己的产品也被别的用户买去,那么用户在数据库中的交易币数量,将出现卖出产品的增加交易币和买入产品的减少交易币的操作,这种并发写入数据库会主动保护的吗?还是有可能产生同步写入冲突?

88

主题

9507

帖子

5135

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
5135
QQ
发表于 2019-8-27 11:57:53 | 显示全部楼层
在服务端实现增加或减少,这是对数据库的两次操作,不会产生冲突
如果在前端更新交易币数量,会产生问题
远程的联系方法 QQ 728094812。添加好友时,需要填写论坛账号
发远程时同时也发一下帖子的地址,方便了解要解决的问题

如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

181

主题

482

帖子

1056

积分

金牌会员

Rank: 6Rank: 6

积分
1056
QQ
 楼主| 发表于 2019-8-27 12:56:21 | 显示全部楼层
zhaixin 发表于 2019-8-27 11:57
在服务端实现增加或减少,这是对数据库的两次操作,不会产生冲突
如果在前端更新交易币数量,会产生问题
...

用户A在前端买入产品,调用“买入”服务请求,后端请求中自动将用户A的交易币减少,扣除给卖方。

此时刚好另一用户B在前端买入用户A的产品,也调用“买入”服务请求,请求操作中同样将用户B的交易币减少,A的交易币增加。

问题:用户A在买入时,刚好他的产品也卖给用户B,这种同时调用同一个请求的操作,会出现用户A交易币增加和减少的冲突吗?
如果会应该如何规避?
回复 支持 反对

使用道具 举报

181

主题

482

帖子

1056

积分

金牌会员

Rank: 6Rank: 6

积分
1056
QQ
 楼主| 发表于 2019-8-30 01:01:59 | 显示全部楼层
zhaixin 发表于 2019-8-27 11:57
在服务端实现增加或减少,这是对数据库的两次操作,不会产生冲突
如果在前端更新交易币数量,会产生问题
...

请看楼上跟进的回复!
回复 支持 反对

使用道具 举报

181

主题

482

帖子

1056

积分

金牌会员

Rank: 6Rank: 6

积分
1056
QQ
 楼主| 发表于 2019-9-2 11:04:59 | 显示全部楼层
zhaixin 发表于 2019-8-27 11:57
在服务端实现增加或减少,这是对数据库的两次操作,不会产生冲突
如果在前端更新交易币数量,会产生问题
...

请看楼上跟进的回复!!!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-6-16 08:07 , Processed in 0.107862 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表