在并发系统里,如何避免死锁?

系统中存在账户表,交易流水表,并发进行交易。处理过程是记流水表,更新账户余额。一个交易报文包含1笔到几百笔交易,另一交易报文可能包含和其报文相同的账户,交易报文之间存在干扰。在测试中,发现频发死锁,几乎无法运行。...显示全部

系统中存在账户表,交易流水表,并发进行交易。处理过程是记流水表,更新账户余额。一个交易报文包含1笔到几百笔交易,另一交易报文可能包含和其报文相同的账户,交易报文之间存在干扰。在测试中,发现频发死锁,几乎无法运行。

收起
参与24

查看其它 5 个回答nxdy的回答

nxdynxdy系统运维工程师nj

修改程序逻辑,尽量避免ABC和BAC的情况
优化程序、SQL语句、索引等,减小单个事务拿锁的数量和时间

银行 · 2018-05-25
浏览2766

回答者

nxdy
nxdy0011
系统运维工程师nj

nxdy 最近回答过的问题

回答状态

  • 发布时间:2018-05-25
  • 关注会员:6 人
  • 回答浏览:2766
  • X社区推广