WorkBuddy无内置压测模块,需用wrk等外部工具模拟真实调用链路,重点测试其对接的模型服务、文件系统、IM网关及Agent调度队列;压测Claw模式须用支持WebSocket/HTTP/2的工具并复用session,避免测出初始化开销;内存泄漏可查memory_trace.log及禁用常驻技能包定位。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

WorkBuddy 本身不提供内置压测模块,部署后若需评估其在高并发指令下的响应稳定性与吞吐能力,必须借助外部工具模拟真实调用链路——重点不是测 WorkBuddy 进程本身,而是测它背后对接的模型服务、文件系统访问、IM 协议网关及本地 Agent 调度队列的综合瓶颈。
怎么用 wrk 模拟微信/企微指令并发
WorkBuddy 的 IM 集成(如企业微信Bot)本质是接收 HTTP webhook 请求。wrk 可直接压测该 endpoint,但要注意:不能只发裸 POST,必须携带合法签名与加密 payload,否则 401/403 会掩盖真实性能问题。
- 先从 WorkBuddy 日志中提取实际收到的请求头(
X-WeCom-Timestamp、X-WeCom-Nonce、X-WeCom-Signature)和 body 样例 - 用 Lua 脚本动态生成带时间戳和签名的请求,避免被网关拒绝:
wrk -t4 -c100 -d30s --script=wechat_wrk.lua http://127.0.0.1:8080/wecom/webhook - 观察
statusserver输出的agent_queue_length和pending_tasks,若持续 >5 且响应延迟跳升,说明 Agent 调度器已饱和
为什么 ab 测试结果不准,尤其在 Claw 模式下
ab 默认不维持连接、不处理重定向、无法携带 session 或 token,而 WorkBuddy 的 Claw 模式依赖长连接保活与上下文状态同步。直接用 ab -n 1000 -c 50 http://localhost:23456/claw/invoke 会大量触发重连和 memory 初始化,测出来的是初始化开销而非真实推理延迟。
使用 draw.io(.drawio 格式)和 SVG 生成兼容 Microsoft Visio 的架构图。当用户需要以下任一场景时触发: - 用于 Visio 或技术文档的架构/系统/网络图 - 带连接标注的分层控制系统图 - 将 draw.io XML 转换为稳定、可嵌入的 SVG - 修复 Visio 或 draw.io 无法打开的故障排查类图表 - 任何需专业级布局且文本可编辑的图表
- Claw 模式下必须用支持 WebSocket 或 HTTP/2 的工具(如
autocannon或自写 Python 脚本),保持 connection reuse - 每次请求前需先调用
/claw/session/start获取有效 session_id,再将该 id 放入后续请求 header:Authorization: Bearer {session_id} - 忽略前 10% 请求的耗时数据——Claw 启动时会加载长期记忆索引,首批请求必然偏高
内存泄漏怎么快速定位(OOM 前兆)
WorkBuddy 在长时间运行后若出现响应变慢、statusserver 显示 memory_usage_percent 持续 >85%,大概率是长期记忆读写未释放或大文件缓存堆积。不要等 OOM 才查。
- 用
ps aux --sort=-%mem | head -n 5确认是否workbuddy进程本身内存暴涨,排除是它调用的 Python 子进程(如 pandas 处理 Excel)泄漏 - 检查
~/.workbuddy/logs/memory_trace.log,搜索关键词MemoryWarning或LargeFileCache - 禁用非必要技能包(尤其是“自动归档”“全文 OCR”类),它们会在后台常驻监听文件夹,持续占用内存而不释放
真正影响 WorkBuddy 实际可用性的,往往不是峰值 QPS,而是单次复杂任务(比如“分析 10 个 Excel+生成 PPT+发飞书”)的端到端延迟稳定性。压测时务必混合真实指令样本,而不是只刷简单 echo。另外,所有测试都应在关闭“长短记忆分离”优化的前提下进行——否则你测的根本不是默认行为下的性能表现。

















