動察 Beating AI 快訊,Ghostty 作者 Mitchell Hashimoto 公佈新終端 Rex 的擴展性測試。Rex 主打長期會話和遠程連接,可以把終端任務留在後台持續運行。這次測試中,Rex 同時維持 1 萬個活躍終端會話,內存佔用約 3.8GB,交互仍能保持響應。團隊暫時沒有繼續往上測,下一目標是 10 萬個。
做到 1 萬個以後,很多開銷已經不是終端本身造成的。第一處瓶頸來自 Linux 的文件描述符表,也就是系統記錄進程打開文件和連接的地方。終端會話超過約 5000 個後,每個新進程光這張表就會多佔約 512KB,實際卻只用了約 4 個文件描述符。Rex 現在加了一段 C 代碼,把這部分空間縮回實際需要的大小。
另一個問題是線程。Rex 過去會讓每個活躍終端會話各佔一個線程等待數據,規模上來後內存開銷太高。現在終端連續 2 秒沒有讀取活動,就會交給一個共享線程統一監聽。