English | 中文
BFE (Beyond Front End) 是百度开源的现代化、企业级的七层负载均衡系统
BFE 是 云原生计算基金会 (Cloud Native Computing Foundation, CNCF) 的一个沙箱项目
BFE开源项目包含多个组件,可以搭建完整的七层负载均衡和流量接入解决方案
BFE系统包括数据平面和控制平面:
- 数据平面:负责用户流量的转发,包含下列组件
- BFE Server:BFE 核心转发引擎,即为本项目(bfenetworks/bfe)。BFE Server 将用户流量经过内容路由、负载均衡,最终转发给合适的后端业务集群
- 控制平面:负责BFE系统的配置和管理等,包含下列组件
- API-Server:对外提供 API 接口,完成 BFE 配置的变更、存储和生成
- Conf-Agent:配置加载组件,从API-Server获取最新配置,并触发 BFE Server 进行配置热加载
- Dashboard:为用户提供了图形化操作界面,以对 BFE 的主要配置进行管理和查看
BFE的架构说明见概览文档
此外,我们也基于 BFE 实现了 BFE Ingress Controller,用于支持在 Kubernetes 中使用 Ingress
- 丰富协议支持:支持HTTP、HTTPS、SPDY、HTTP/2、WebSocket、TLS、gRPC、FastCGI等
- 基于请求内容的路由:支持高级条件表达式定制转发规则,转发规则易于理解及维护
- 高级负载均衡:支持全局/分布式负载均衡,实现就近访问、跨可用区容灾及过载保护等
- 灵活的模块框架:支持高效率定制开发第三方扩展模块
- 高效易用的管理:支持转发集群配置集中管理,提供Dashboard和RESTful API
- 一流的可见性:提供丰富详尽的监控指标,提供各类日志供问题诊断、数据分析及可视化 了解更多详情
- 请参考编译及运行
- 《深入理解BFE》 :介绍网络接入的相关技术原理,说明BFE的设计思想,以及如何基于BFE搭建现代化的网络接入平台。现已开放全文阅读。
- 项目维护者: MAINTAINERS
- 项目贡献者: CONTRIBUTORS
-
开源BFE微信公众号:扫码关注公众号“BFE开源项目”,及时获取项目最新信息和技术分享
-
开源BFE用户微信群:扫码加入,探讨和分享对BFE的建议、使用心得、疑问等
-
开源BFE开发者微信群: 发送邮件说明您的微信号及贡献(例如PR/Issue),我们将及时邀请您加入
BFE基于Apache 2.0许可证,详见LICENSE文件说明