什么是BBF?它有什么用处?

预计阅读时间: 3 分钟

出现情况:

比如后端服务绝大部分都是微服务,可能会有很多个服务,如果前端要调用后端的服务,那么就需要知道后端服务的地址。

如果你不加处理的话,会出现以下问题:

  1. 前后端耦合度高,前端需要知道后端服务的地址,如果后端服务地址发生变化,那么前端也需要跟着变化。
  2. 前端需要知道后端服务的地址,这样会导致前端代码中充斥着后端服务的地址,不利于维护。
  3. 前端如果需要聚合多个后端服务的数据,那么就需要调用多个后端服务,比如C-S1同时需要使用S1的数据去请求S2的数据,最终返回给前端。

什么是BBF?

BBFBackends For Frontends的缩写,它是一种设计模式,它的目的是为了解决前端调用后端服务的问题。

BBF的优势:

  1. 前后端解耦:前端不需要知道后端服务的地址,只需要调用BBF即可。
  2. 聚合数据:BBF可以聚合多个后端服务的数据,最终返回给前端。
  3. 专门为前端设计:BBF是专门为前端设计的后端服务,它会根据前端的需求,返回给前端需要的数据。
  4. 安全性:
    • 内网环境,通过RPC调用后端服务,不会暴露后端服务的真实地址。
    • 对后端服务的数据进行处理,比如对数据进行过滤排序脱敏等操作
    • 对数据进行权限控制
  5. 性能:BBF可以对后端服务的数据进行缓存,提高性能。
  6. 白名单,黑名单:BBF可以对前端请求的数据进行白名单黑名单的过滤。