Collabora Online 架构详解:3 个核心组件 + 私有化部署避坑清单
Collabora Online 架构详解3 个核心组件 私有化部署避坑清单【免费下载链接】onlineIssue tracker only. Active development is on Gerrit at https://gerrit.collaboraoffice.com/.项目地址: https://gitcode.com/gh_mirrors/on/online在线文档被拆到公网服务后数据主权和延迟就成了绕不开的痛点。Collabora Online 让你把在线协作办公整套搬到自己的机房还能和 Nextcloud、OnlyOffice 之外的自研系统对接。下面从组件分工讲到部署调优。一张表看懂 wsd 与 kit 的分工 Collabora Online 本质是三块代码的协作可以类比成一家餐厅wsdWeb 服务守护进程前台接待。接收所有 HTTP 和 WebSocket 请求管理会话、做负载均衡自己不碰文档内容。kit客户端渲染引擎独立厨房。每个打开的文档对应一个隔离的 kit 进程渲染和编辑都在这里发生进程互不干扰。common共享代码库公共工具箱。协议处理、加密、文件操作等基础能力放在 共享代码库 中保证前台和厨房口径一致。组件角色类比职责wsd前台接待接入请求、会话管理、负载均衡kit独立厨房单文档渲染与编辑进程隔离common公共工具箱协议、加密、文件等共享基础Collabora Online 私有化部署步骤跑起最小环境最快的路径是直接用官方容器镜像一条命令即可起服务。git clone https://gitcode.com/gh_mirrors/on/online docker run -t -d -p 9980:9980 \ --cap-add SYS_ADMIN -v /cool:all \ -e aliasgroup1https://office.example.com:9980 \ -e demosoff -e usernameadmin -e passwordpass \ collabora/code浏览器访问https://office.example.com:9980/看到状态页即部署成功。生产环境建议走 HelmChart 位于 kubernetes/helm/collabora-online/README 里给了 nginx / HAProxy 两套 Ingress 的完整 values 示例照着改域名和副本数即可。注意一点负载均衡必须按 WOPISrc 做会话保持否则同文档的协作者会被分到不同 Pod协作编辑直接失效。渲染性能调优参数与 4 个高频坑 ️现象和做法一一对应照着排查打开文档首帧慢→ 每个 kit 进程约需 256MB 内存且冷启动要拉 LibreOffice 运行时。做法预留内存预算并在 values 里设置--o:num_prespawn_children4预热子进程把冷启动成本摊平。并发一上来 CPU 抖动明显→ 频繁新建 kit 进程和 WebSocket 连接所致。做法启用连接复用保持预生成子进程池减少握手开销。大图文档翻页卡顿→ 做法开启 TileCache 和 SlideCache让已渲染的瓦片/幻灯片命中缓存而不是重绘。多实例扩了但会话互相踢→ 会话状态必须粘在同一实例。做法按 WOPISrc 哈希路由Helm 中已提供对应 Ingress annotation再配 HPA 按 CPU 弹性扩缩。这套方案适合谁上线 ✍️适合文档必须留在内网、要与自研业务系统深度对接WOPI 协议的团队以及愿意维护容器和 Ingress 的运维。不适合只是想要个能用的在线 Office、没有专职运维的场景——自建的成本远高于直接用 SaaS。把 wsd 无状态层水平扩、kit 按内存纵向配就是它最稳的运行形态。【免费下载链接】onlineIssue tracker only. Active development is on Gerrit at https://gerrit.collaboraoffice.com/.项目地址: https://gitcode.com/gh_mirrors/on/online创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考