BFE 应用层负载均衡引擎开源项目

我要开发同款
匿名用户2019年11月12日
60阅读
开发技术GO语言
所属分类Google Go、集群/负载均衡、服务器软件
授权协议Apache

作品详情

BFE是基于百度统一接入前端(BaiduFrontEnd)开源的现代化七层流量接入系统。

功能特性及优点

基于Golang构建

基于内存安全语言构建无缓冲区溢出安全漏洞隐患;具备异常捕获容错处理能力避免进程异常退出;兼容支持Linux/Windows/MacOS等多平台运行。

灵活的模块框架内置灵活的模块框架,支持高效率定制开发第三方扩展模块。

面向多租户架构基于多租户架构设计,租户之间配置相互隔离。

支持丰富的接入协议支持HTTP,HTTPS,SPDY,HTTP/2,WebSocket,TLS等。未来计划支持gRPC,HTTP/3。

基于请求内容路由支持高级条件表达式定制转发规则,转发规则易于理解及维护。

高级负载均衡支持全局/分布式负载均衡,实现就近访问、跨可用区容灾及过载保护等。

丰富的扩展模块提供丰富的流量管理、安全防攻击、可见性等相关扩展模块。

一流的可见性提供丰富详尽的监控指标;提供各类日志(服务日志/访问日志/TLSKey日志)供问题诊断、数据分析及可视化;BFE还支持请求分布式Tracing。

兼容适配主流生态项目兼容适配主流四层负载均衡方案,及其它生态项目如Kubernetes、Prometheus、Jaeger、Fluentd等。

系统架构说明下图展示了BFE的架构及BFE生态中的一些依赖系统。

BFE包含了多个组件,部分是可选的:

BFEServer:BFE数据平面核心转发模块

BFE-Reader:BFE日志分析模块,与BFEServer部署在一起,用于对BFE日志进行本地汇聚计算,降低后续计算处理的数据规模。

BFE-APIServer:BFE控制平面APIServer,其它控制平面模块以BFE-APIServer为核心协同工作。

BFE-Aggregator:BFE日志数据实时聚合计算模块。

BFE-Scheduler:BFE流量调度器,基于流量、容量、网络距离及质量,自动计算全局负载均衡(GSLB)策略。

BFE-Controller:BFE集群控制器,执行常规控制任务,例如异常巡检及报警。

BFE-WebUI:BFEWeb控制台。

其它周边依赖系统,例如缓存服务、非对称密码学算法计算服务等。

更多详细信息参见项目网站 https://www.bfe-networks.net/zh_cn/

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论