部署
Midway Hooks 支持 Api Server 与一体化两种模式。
Api Server 部署
Api Server 部署可以参考:启动和部署。
如果使用单文件部署,可以参考示例:hooks-api-bundle-starter
一体化部署
一体化的构建产物中包含前后端,根据部署的难易程度,可以分为以下几类。
- 前后端部署在同一服务器上,由后端托管 HTML & 静态资源 & 提供接口
- 静态资源部署至 CDN,后端托管 HTML & 提供接口
- 静态资源部署至 CDN,HTML 由单独的服务托管(CDN / Nginx / etc.),后端仅提供接口
接下来我将介绍三种部署模式如何落地,优势及存在的问题。
前后端部署在同一服务器上
这是全栈套件默认的部署模式。
优势:最简单,将打包后的产物直接上传至服务器,启动后即可提供服务 劣势:
- 后端服务需要处理 & 发送文件
- 静态资源不在 CDN,不同地域的访问速度不稳定
整体部署架构如图所示:

静态资源部署至 CDN,后端托管 HTML & 提供接口
这也是当前前端主流的部署模式。
优势:
- 静态资源由 CDN 托管,保证用户访问速度
- 后端托管 HTML,确保返回的 HTML 文件是最新的
劣势:
- 后端仍需要托管 HTML,仍需要处理 & 发送文件,且如果服务宕机则页面无法访问
整体访问架构如图所示: