快还是慢worker-comfyui同步/runsync与异步/run选端指南Webhook通知教程【免费下载链接】runpod-worker-comfyComfyUI as a serverless API on Runpod项目地址: https://gitcode.com/gh_mirrors/ru/runpod-worker-comfyworker-comfyui将 ComfyUI 这个 AI 绘图工作流引擎变成了部署在 RunPod 上的 serverless API提交 workflow JSON拿回生成的图片base64 或 S3 URL。但调用 API 时新手常被两个端点绕晕——同步的/runsync和异步的/run到底哪个快差别只是名字吗本文用 4 个真实场景讲透选端技巧并附 Webhook 通知教程让任务完成后自动回调你的服务器不用再轮询。两个“面孔”同一个端点/runs 与 /runsync 的区别worker-comfyui 暴露了 RunPod 标准 serverless 端点/run、/runsync和/health。两者接收完全相同的输入——workflowJSON可选images在同一台 worker 上执行区别只在请求如何返回结果。同步 /runsync等完结果直接给你向/runsync发起 POST 后HTTP 连接会一直保持直到 ComfyUI 执行完整个 workflow再直接返回包含status和output.images的完整响应✅ 适合单张图、生成时间较短的工作流SD3、SDXL、FLUX schnell✅ 体验发请求 → 等待 → 拿图一步到位⚠️ 注意客户端超时要留够/runsync的请求体上限为20MB异步 /runs先拿任务 ID回头再取结果向/run发起 POST 会立即返回一个 jobid执行在后台继续。之后你有两种取结果方式轮询/status?idjob_id直到status变为COMPLETED推荐在请求里带上Webhook任务完成时系统主动回调你下文详解。✅ 适合长耗时 workflow、批量出图、客户端不愿被阻塞的场景⚠️ 注意/run请求体上限仅10MB比/runsync更小 一句话记住要结果就选 /runsync要不被阻塞就选 /run Webhook。上图中 RunPod 端点详情页的 RUNSYNC 栏直接给出了请求地址中间那串就是端点 ID末尾的/runsync可以替换为/run或/status。4 个场景怎么选端对号入座别纠结快慢场景推荐端点理由网页端实时出图用户在盯着屏幕/runsync直接等待一次往返链路最短长 workflow如 FLUX dev超过 30 秒/run/status轮询规避客户端超时与连接重置批量任务完成后要触发下游流程/run Webhook回调一次到位零轮询开销请求里带大尺寸 base64 输入图/runsync20MB 上限/run只有 10MB容易超限两个常被忽略的细节速度主要由模型和 GPU 决定而不是端点。/runsync不会让出图变快它只是“帮你等着”/run只是更快把“取票号”递给你。两个端点的输出格式完全一致默认返回 base64配置 S3 环境变量后返回 S3 URL见 docs/configuration.md下游解析逻辑可完全复用。两种方式的执行核心都在 handler.py 的handler函数里——通过 WebSocket 监听执行进度、完成后拉取 history 与/view图片数据。同一个 handler 处理两种端点因此结果保证一致。Webhook 通知教程3 步配置告别轮询对/run异步请求只需在请求体里多加一个webhook字段任务结束时无论成功或失败系统就会把最终结果 POST 到你的 URL{ input: { workflow: { …你的 workflow JSON…: {} } }, webhook: https://your-server.com/comfyui/callback }三个要点Webhook 必须公网可访问——RunPod 的 worker 需要从外网回连你的地址本机或内网地址不可用回调要校验——检查 payload 中的status字段失败时读取错误信息并落日志搭配 S3 使用更优雅——配置 S3 上传后回调里只含轻量 URL不再搬运大体积 base64。完整的请求示例可参考 test_input.json现成的样例工作流SD3、SDXL、FLUX 系列在 test_resources/workflows/。新手高频疑问Q1/runs 和 /runsync 能随意互换吗输出会不一样吗输入输出结构完全一致只差“等待姿势”。只要客户端能保持连接等待到执行结束/runsync是更省心的选择。Q2workflow 要跑 2 分钟用 /runs 一直超时换/run Webhook或调大客户端 HTTP 超时注意中间网关通常也有自己的超时限制。Q3传输入图时总是报请求过大base64 编码会把原图体积放大约 1/3超过 10MB/run或 20MB/runsync就会失败。可改用 S3 或网络卷存放素材参考 docs/network-volumes.md。Q4workflow JSON 从哪来在 ComfyUI 顶栏选择Workflow Export (API)导出的文件内容直接作为input.workflow提交即可。关键资料导航部署端点全流程GPU 推荐、模板配置docs/deployment.md全部环境变量S3、日志、WebSocket 重连参数docs/configuration.md本地开发与调试 APIdocs/development.md核心执行逻辑handler.py镜像构建定义Dockerfile⚡ 总结要“马上拿到”选/runsync要“后台拿到”选/run Webhook。选端不改变出图质量只改变你接收结果的方式——按场景对号入座即可。【免费下载链接】runpod-worker-comfyComfyUI as a serverless API on Runpod项目地址: https://gitcode.com/gh_mirrors/ru/runpod-worker-comfy创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考