<cite id="ffb66"></cite><cite id="ffb66"><track id="ffb66"></track></cite>
      <legend id="ffb66"><li id="ffb66"></li></legend>
      色婷婷久,激情色播,久久久无码专区,亚洲中文字幕av,国产成人A片,av无码免费,精品久久国产,99视频精品3
      網(wǎng)易首頁 > 網(wǎng)易號 > 正文 申請入駐

      5個AI搶活干,工程師用1個文件夾干掉380條消息

      0
      分享至


      5個AI編碼助手同時跑,怎么知道誰該干什么、什么已經(jīng)有人干了、什么干完了?標(biāo)準(zhǔn)答案是消息總線。我試過,然后把它扔了——換成一個Markdown文件夾。6個月過去,我沒回頭。

      消息總線的數(shù)學(xué)題:5個節(jié)點是10條線,20個節(jié)點是380條

      消息總線架構(gòu)聽著優(yōu)雅:Agent發(fā)布、訂閱、協(xié)商任務(wù)、廣播狀態(tài)。CrewAI、AutoGen,帶"多智能體"標(biāo)簽的框架都這么干。

      Agent A干完任務(wù)27,廣播"我完事了"。Agent B、C、D、E全收到。B搶任務(wù)28,再廣播"我的了"。剩下的人得更新狀態(tài),避免重復(fù)認(rèn)領(lǐng)。

      5個Agent還能忍。10個是90對潛在通信。20個是380對。通信開銷按O(n2)膨脹,每條消息都是競態(tài)條件、狀態(tài)過期、更新丟失的溫床。

      更糟的是看不見。協(xié)調(diào)狀態(tài)在飛行中——消息隊列、內(nèi)存緩沖、Agent上下文窗口里。出問題時,你在調(diào)試幽靈。

      Batty的解法:把任務(wù)板寫進文件系統(tǒng)

      我寫的Batty換了個思路。每個任務(wù)是一個Markdown文件,扔在目錄里:

      .batty/board/tasks/
      ├── 027-add-jwt-auth.md # status: in-progress, claimed_by: eng-1
      ├── 028-user-registration.md # status: todo
      ├── 029-add-rate-limiting.md # status: backlog
      └── 030-fix-dashboard-css.md # status: done

      文件頭部是YAML,機器讀;正文是Markdown,人看:

      id: 28
      title: User registration endpoint
      status: todo
      priority: high
      depends_on: [27]
      claimed_by:
      tags: [api, auth]
      # User registration endpoint
      Add POST /api/register with email validation,
      password hashing, and duplicate detection.
      ## Done when
      - Endpoint returns 201 with user object
      - Duplicate email returns 409
      - Tests cover happy path and validation errors

      Agent不訂閱主題,不跟同伴談判。讀一個文件。一個文件,一次讀取,一個任務(wù)。O(1)。

      調(diào)度算法:10秒輪詢,5步?jīng)Q策

      Batty的守護進程跑輪詢循環(huán),每10秒掃一遍任務(wù)板:

      1. 掃描任務(wù)目錄
      2. 找出空閑Agent(沒活干的)
      3. 對每個空閑Agent,找優(yōu)先級最高的任務(wù),條件是:
      - status: backlog 或 todo
      - 沒人認(rèn)領(lǐng)
      - 沒阻塞
      - 依賴已解決(depends_on里的任務(wù)都done了)
      4. 更新任務(wù)文件:status → in-progress,claimed_by → eng-1
      5. 啟動Agent,帶上任務(wù)上下文

      這就是全部調(diào)度邏輯。優(yōu)先級隊列、依賴解析、死鎖檢測,都在文件系統(tǒng)里原子化完成。

      消息總線那套?協(xié)商、廣播、狀態(tài)同步——全刪了。不需要最終一致性,因為只有一個真相來源:那個Markdown文件。

      文件系統(tǒng)當(dāng)數(shù)據(jù)庫:原子寫、可見性、時間旅行

      用文件系統(tǒng)聽起來像開倒車,但現(xiàn)代OS的文件操作比你想象的硬。

      原子寫入:Batty用write-to-temp-then-rename模式。Agent先寫.task-28.md.tmp,寫完原子重命名為.task-28.md。系統(tǒng)崩潰也留不下半成品。

      可見性保證:rename()成功瞬間,新內(nèi)容對所有讀者可見。沒有"寫入中"的灰色狀態(tài)。

      時間旅行:Git提交就是快照。任務(wù)板的歷史全在.git里。上周三下午3點誰認(rèn)領(lǐng)了什么、為什么任務(wù)27卡了4小時,git log --all -- '*.md' 一目了然。

      消息總線的歷史?在日志輪轉(zhuǎn)里,在ELK集群的保留策略里,在"哎呀?jīng)]開持久化"的懊悔里。

      調(diào)試體驗:從"猜幽靈狀態(tài)"到"cat一下"

      上周任務(wù)31卡住了。我干了什么?

      cd .batty/board/tasks && cat 031-refactor-db-layer.md

      YAML frontmatter告訴我:status: in-progress,claimed_by: eng-3,started_at: 2024-01-15T09:23:00Z。正文里Agent自己寫的筆記:"發(fā)現(xiàn)users表有循環(huán)依賴,需要拆成兩個遷移"。

      消息總線架構(gòu)下呢?查日志。查哪個Agent的日志?它廣播"我認(rèn)領(lǐng)了31"了嗎?消息丟了嗎?還是Agent自己崩潰了沒發(fā)心跳?

      在Batty里,調(diào)試就是讀文件。ls -lt按時間排序,最近改過的任務(wù)浮上來。grep -r "循環(huán)依賴" . 跨任務(wù)搜上下文。fzf交互式模糊搜索,3秒定位。

      我把這叫做"可cat的架構(gòu)"。

      擴展性實測:從5個到50個Agent

      6個月里我的場景從5個Agent漲到峰值47個。文件系統(tǒng)扛住了。

      瓶頸在哪?不是文件讀取——現(xiàn)代SSD隨機讀能到50萬IOPS,我的任務(wù)板撐死幾百個文件。是Git。47個Agent并發(fā)提交,.git/index鎖競爭明顯。

      解法?批量提交。Agent不每完成一個任務(wù)就git commit,而是攢一批,或者讓守護進程統(tǒng)一提交。把O(n)的提交變成O(1)。

      消息總線在這個階段會面臨什么?380對通信變成2200對,broker的內(nèi)存隊列開始告警,消費者組重平衡拖垮吞吐。我不用猜,去年在Kafka上踩過一模一樣的坑。

      什么場景不適合

      得誠實。文件系統(tǒng)協(xié)調(diào)有硬邊界。

      跨機器不行。NFS、SMB、甚至云盤同步,都破壞原子性假設(shè)。Batty目前限定單節(jié)點,用Docker Compose綁在一臺機器上。

      亞秒級響應(yīng)不行。10秒輪詢是設(shè)計選擇。任務(wù)粒度是"實現(xiàn)一個API端點"級別,不是"查詢向量數(shù)據(jù)庫"級別。后者用消息總線合理。

      復(fù)雜工作流不行。DAG依賴 Batty 能處理,但條件分支、循環(huán)、動態(tài)任務(wù)生成?YAML frontmatter里塞不下,得正經(jīng)上工作流引擎。

      我的判斷:AI編碼Agent的任務(wù)特性——粗粒度、可并行、依賴明確、需要人審——恰好落在文件系統(tǒng)的甜蜜區(qū)。

      6個月后的真實數(shù)據(jù)

      從2023年7月到現(xiàn)在,Batty調(diào)度了2,847個任務(wù)。平均完成時間從消息總線方案的4.2小時降到2.7小時。不是算法變快了,是調(diào)試時間少了。

      任務(wù)沖突(兩個Agent認(rèn)領(lǐng)同一任務(wù))發(fā)生了3次。全是早期代碼bug:rename()前沒檢查文件是否存在。修了之后,零次。

      消息丟失?零次。狀態(tài)不一致需要人工修復(fù)?零次。

      Git倉庫大小:47MB。包含完整歷史、所有任務(wù)描述、Agent的中間筆記、甚至失敗的嘗試記錄。

      給想試的人:最小可行版本

      你不需要Batty。核心邏輯50行Python:

      import os, yaml, glob, subprocess
      from datetime import datetime
      BOARD = ".batty/board/tasks"
      def scan():
      tasks = []
      for path in glob.glob(f"{BOARD}/*.md"):
      with open(path) as f:
      content = f.read()
      if '---' not in content: continue
      _, frontmatter, body = content.split('---', 2)
      meta = yaml.safe_load(frontmatter)
      meta['path'] = path
      tasks.append(meta)
      return tasks
      def claim(task, agent_id):
      tmp = task['path'] + '.tmp'
      with open(task['path']) as f, open(tmp, 'w') as out:
      content = f.read()
      new = content.replace('status: todo', f'status: in-progress\\nclaimed_by: {agent_id}')
      out.write(new)
      os.rename(tmp, task['path'])
      def dispatch(idle_agents):
      tasks = scan()
      ready = [t for t in tasks if t.get('status') in ('todo','backlog') and not t.get('claimed_by')]
      for agent in idle_agents:
      if not ready: break
      task = max(ready, key=lambda t: t.get('priority', 0))
      claim(task, agent)
      subprocess.Popen(['python', 'agent.py', '--task', task['path']])
      ready.remove(task)

      沒有依賴,沒有broker,沒有分布式系統(tǒng)的博士學(xué)位。

      一個意外發(fā)現(xiàn):Agent開始寫更好的任務(wù)描述

      消息總線時代,任務(wù)描述是"實現(xiàn)用戶注冊"。Agent收到后經(jīng)常問:密碼策略?郵箱驗證?速率限制?

      換成Markdown文件后,Agent知道這文件會被下一個Agent、被我、被未來的自己反復(fù)閱讀。描述變長了,變具體了,"Done when" checklist成了標(biāo)配。

      有個任務(wù)文件我印象很深。Agent eng-2在031-refactor-db-layer.md底部加了節(jié)"踩坑記錄":"別用Alembic的batch_alter_table,SQLite不支持外鍵重命名。用了2小時才發(fā)現(xiàn)。"

      下一個接數(shù)據(jù)庫遷移任務(wù)的Agent,自動繼承了這2小時的經(jīng)驗。

      消息總線能廣播經(jīng)驗嗎?能,但誰訂閱"我踩坑了"這個主題?

      文件系統(tǒng)不講訂閱,講可見。ls一下,所有歷史攤在桌上。

      特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺“網(wǎng)易號”用戶上傳并發(fā)布,本平臺僅提供信息存儲服務(wù)。

      Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

      相關(guān)推薦
      熱點推薦
      友商評張雪:他不成功天理難容,這個男人真的可以帶我們稱霸世界

      友商評張雪:他不成功天理難容,這個男人真的可以帶我們稱霸世界

      干史人
      2026-04-05 22:30:03
      芯片巨頭財報炸裂!同比飆升755%,單季狂瀾6000億!

      芯片巨頭財報炸裂!同比飆升755%,單季狂瀾6000億!

      EETOP半導(dǎo)體社區(qū)
      2026-04-07 11:28:15
      不到24小時,特朗普發(fā)出死亡威脅,中俄預(yù)判準(zhǔn)確,搶先發(fā)出警告

      不到24小時,特朗普發(fā)出死亡威脅,中俄預(yù)判準(zhǔn)確,搶先發(fā)出警告

      一個有靈魂的作者
      2026-04-06 20:43:44
      真沒法在老鷹待了!1600萬沃克10次 30+,2250萬的庫明加拿5分!

      真沒法在老鷹待了!1600萬沃克10次 30+,2250萬的庫明加拿5分!

      光輝記
      2026-04-07 10:56:54
      連續(xù)下跌10年,年線10連陰的4只股票,跌幅均在90%左右!

      連續(xù)下跌10年,年線10連陰的4只股票,跌幅均在90%左右!

      丁丁鯉史紀(jì)
      2026-04-07 17:19:30
      400%暴漲!委內(nèi)瑞拉石油局勢突變:印度接盤,特朗普成最大贏家?

      400%暴漲!委內(nèi)瑞拉石油局勢突變:印度接盤,特朗普成最大贏家?

      混沌錄
      2026-04-07 17:37:05
      王皓總結(jié)世界杯:壓力大失眠,王楚欽拯救了我們,溫瑞博還稚嫩

      王皓總結(jié)世界杯:壓力大失眠,王楚欽拯救了我們,溫瑞博還稚嫩

      帛河體育
      2026-04-06 20:09:11
      35歲拉姆塞官宣掛靴 前阿森納中場“雙子星”都退了

      35歲拉姆塞官宣掛靴 前阿森納中場“雙子星”都退了

      體壇周報
      2026-04-07 18:47:11
      回顧:2012年山東一對新人蜜月被害,破案后新郎父親說:怎么是你

      回顧:2012年山東一對新人蜜月被害,破案后新郎父親說:怎么是你

      歷來都很現(xiàn)實
      2024-08-10 21:00:11
      人緣帶來財緣!今年貴人追著跑的3個生肖,好運好財多合作共贏

      人緣帶來財緣!今年貴人追著跑的3個生肖,好運好財多合作共贏

      毅談生肖
      2026-04-07 10:43:31
      外媒熱議趙心童奪冠:“旋風(fēng)”橫掃,頂級準(zhǔn)度,恐怖統(tǒng)治力

      外媒熱議趙心童奪冠:“旋風(fēng)”橫掃,頂級準(zhǔn)度,恐怖統(tǒng)治力

      觀察鑒娛
      2026-04-07 11:32:02
      Woc!才5年6200萬,老鷹找到了自己的“鷹王”

      Woc!才5年6200萬,老鷹找到了自己的“鷹王”

      體育新角度
      2026-04-07 18:49:23
      妻子聚會被初戀拉進洗手間半小時,回家后問我吃醋嗎,我直接離婚

      妻子聚會被初戀拉進洗手間半小時,回家后問我吃醋嗎,我直接離婚

      千秋文化
      2026-03-13 21:04:41
      國內(nèi)某汽車巨頭獲百萬輛海外訂單!

      國內(nèi)某汽車巨頭獲百萬輛海外訂單!

      新浪財經(jīng)
      2026-04-07 04:16:18
      浙大研究:每天多吃一個蛋,心臟疾病和癌癥死亡風(fēng)險增加?真相來了

      浙大研究:每天多吃一個蛋,心臟疾病和癌癥死亡風(fēng)險增加?真相來了

      消化石醫(yī)生
      2026-03-30 11:17:40
      為什么有個漂亮老婆還是想要分 網(wǎng)友講出自身經(jīng)歷真是一言難盡

      為什么有個漂亮老婆還是想要分 網(wǎng)友講出自身經(jīng)歷真是一言難盡

      侃神評故事
      2026-03-10 18:50:04
      人過80歲,你還有四個特征,說明你的命好的不得了,占一個偷著樂

      人過80歲,你還有四個特征,說明你的命好的不得了,占一個偷著樂

      醫(yī)學(xué)原創(chuàng)故事會
      2026-04-07 00:18:05
      杜鋒算盤徹底藏不住!廣東最想打的3個對手全拆解,都是天選禮包

      杜鋒算盤徹底藏不住!廣東最想打的3個對手全拆解,都是天選禮包

      吳朑愛游泳
      2026-04-07 17:48:11
      內(nèi)娛女神劉詩詩驚艷蛻變?飽滿身姿暗藏極致女人味,這身材太絕?

      內(nèi)娛女神劉詩詩驚艷蛻變?飽滿身姿暗藏極致女人味,這身材太絕?

      娛樂領(lǐng)航家
      2026-03-10 22:00:04
      馬克龍簽完反華聲明,法專機抵達韓國,不到48小時,他又算計中方

      馬克龍簽完反華聲明,法專機抵達韓國,不到48小時,他又算計中方

      書紀(jì)文譚
      2026-04-06 18:23:04
      2026-04-07 19:43:00
      碳基打工人
      碳基打工人
      坐標(biāo)北京,靠咖啡續(xù)命,靠小紅書下飯的普通人類。
      924文章數(shù) 6關(guān)注度
      往期回顧 全部

      科技要聞

      滿嘴謊言!OpenAI奧特曼黑料大起底

      頭條要聞

      英媒:伊朗最高領(lǐng)袖病重昏迷 無法參與任何國家決策

      頭條要聞

      英媒:伊朗最高領(lǐng)袖病重昏迷 無法參與任何國家決策

      體育要聞

      官宣簽約“AI球員”,這支球隊被罵慘了...

      娛樂要聞

      女首富陳麗華離世 被曝生前已分好遺產(chǎn)

      財經(jīng)要聞

      10萬億財政轉(zhuǎn)移支付,被誰拿走了?

      汽車要聞

      不止是大 極狐首款MPV問道V9靜態(tài)體驗

      態(tài)度原創(chuàng)

      親子
      游戲
      時尚
      數(shù)碼
      本地

      親子要聞

      別讓過度檢查,毀了你的備孕路!

      大話西游手游通用套裝哪個好用?仙族首選容止,變身卡不再被克

      楊超越之后,全網(wǎng)頭像錦鯉的C位被她搶走了

      數(shù)碼要聞

      榮耀多款新品PC定檔,方飛透露WIN游戲本將成為三角洲聯(lián)賽指定本

      本地新聞

      跟著歌聲游安徽,聽古村回響

      無障礙瀏覽 進入關(guān)懷版