V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
推荐工具
RoboMongo
推荐书目
50 Tips and Tricks for MongoDB Developers
Related Blogs
Snail in a Turtleneck
Liuwilliam1
V2EX  ›  MongoDB

请教大佬: mongo4.2 多个事务修改 document 报 WriteConflict

  •  
  •   Liuwilliam1 · Apr 9, 2022 · 2735 views
    This topic created in 1490 days ago, the information mentioned may be changed or developed.

    ps:我的业务确实要并发修改同一个 document 我看网上有两种解决方案

    1.比如修改 maxTransactionLockRequestTimeoutMillis=36000000
    
    2.应用层限制,比如实现排队系统
    

    请问大佬有什么好的建议吗,感谢感谢

    4 replies    2022-04-16 17:07:41 +08:00
    monkeyWie
        1
    monkeyWie  
       Apr 9, 2022
    改超时时间吧,我们之前也遇过这个坑
    Liuwilliam1
        2
    Liuwilliam1  
    OP
       Apr 9, 2022
    @monkeyWie 请问大佬,每一个 mongos 都要改配置对吧
    clf
        3
    clf  
       Apr 9, 2022
    要改超时时间的话,每一台最好都改一下。还有一种方案是特定异常后重试。

    ——————

    最好是不要在数据库层面并发操作同一个 document ,应该把数据加载到服务层后并发修改内存里的对象,最后存储修改到数据库。
    Liuwilliam1
        4
    Liuwilliam1  
    OP
       Apr 16, 2022
    @clf 感谢大佬的指教
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   955 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 39ms · UTC 20:34 · PVG 04:34 · LAX 13:34 · JFK 16:34
    ♥ Do have faith in what you're doing.