10|多个 Agent 并发操作同一个世界:隔离优于共享
李号双

你好,我是李号双。
前两节课我们分别解决了单 Agent 的循环控制和多 Agent 间的通信规范。接下来进入一个更常见的场景:多个 Agent 真正并行执行任务时,如何安全地访问共享数据。
考虑这样一个任务:5 个数据库并发迁移到新灾备中心,5 个 Agent 同时开工。有三样资源需要共享:
进度要共享:哪几个库迁完了、还剩哪些没动,得记在同一份进度文件里,5 个 Agent 人人要读、也要改。
配置要共用:源库和目标库的地址、限流规则、切换开关,全局只有一份,要改就得先拿锁,免得别人读到改了一半的配置;
数据库连接要抢:连接不是无限的,池子里就那么几个,5 个 Agent 干活都得从里面拿,拿不到就得等。
三种故障,就一幕一幕埋在这三样东西里。
场景一:竞态覆盖——数据静默丢失。
真实系统里,共享的进度多半落在文件里,每个 Agent 更新它的写法长这样:
三步之间没有任何保护,灾难就藏在这道缝里。Agent-1 费劲把 test_a 的 dump 做完了,正要写回进度;毫秒之间,Agent-2 也在写回,但它手里那份,是读进来的旧值,那时 Agent-1 还没来得及写,Agent-2 这一笔覆盖写下去,Agent-1 的记录就像从来没存在过一样。
公开
同步至部落
取消
完成
0/2000
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《生产级 Agent 排雷实战》,新⼈⾸单¥59
《生产级 Agent 排雷实战》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论