引入 BFF 层的优势在哪里
Issue 欢迎在 Gtihub Issue 中回答此问题: Issue 613
Author 回答者: shfshanyue
BFF 全称 Backend For Frontend
,一般指在前端与服务器端搭建一层由前端维护的 Node Server服务,具有以下好处
- 数据处理。对数据进行校验、清洗及格式化。使得数据更与前端契合
- 数据聚合。后端无需处理大量的表连接工作,第三方接口聚合工作,业务逻辑简化为各个资源的增删改查,由 BFF 层聚合各个资源的数据,后端可集中处理性能问题、监控问题、消息队列等
- 权限前移。在 BFF 层统一认证鉴权,后端无需做权限校验,后端可直接部署在集群内网,无需向外网暴露服务,减少了后端复杂度。
但其中也有一些坏处,如以下
- 引入复杂度,新的 BFF 服务需要一套基础设施的支持,如日志、异常、部署、监控等