踩过的区别很具体:
stdio:本地起进程,用管道通信。优点是没有网络暴露、启动快、权限跟当前用户一致。缺点是一个 server 进程只能服务一个客户端,多开客户端就多进程。适合文件系统、git、本地数据库这类。
SSE(HTTP):server 独立部署,多个客户端连同一个。优点是可共享、可挂鉴权、可放内网服务后面。缺点是断线重连要处理,session 管理得自己写。适合团队共享的知识库、内部 API 网关这类。
我自己的组合:本地文件操作走 stdio,公司知识库走 SSE,挂在 nginx 后面加 basic auth。
一个细节:SSE 模式注意心跳,中间有反代时 60 秒没数据会被断。定期发 comment 保活,不然长任务跑到一半连接没了。
主楼文档链接能发一下吗,想看看官方怎么说。
补充一点:如果是容器里跑,注意 127.0.0.1 和 0.0.0.0 的区别,我在这上面浪费了半天。
继续逛逛