一晃眼又到了年底,2020年的春节来得格外早,网友们都摩拳擦掌,准备开启鼠年春晚的吐槽模式,也有许多念旧的网友开始怀念起今年年初春晚的那一场红包狂欢。

作为近几年春晚上的新玩法,“抢红包”吸引了数以亿计的中国老百姓参与,为这中国最重要的节日更增添了一份喜庆的气息。而在2019猪年春晚期间,红包赞助商百度与央视携手创造了一个奇迹:全球观众参与红包互动的累计人次达到208亿的同时,没有宕机!

百度也成为了首位扛住春晚顶级流量的互联网公司!这可是连微信、淘宝、支付宝都做不到的事。9个月后,百度再放大招:承载春晚万亿流量的转发引擎BFE开!源!了!

BFE是什么?

BFE是Baidu Front End(百度统一前端)的缩写,是百度的统一七层流量转发平台,目前已接入百度大部分流量,很多人在使用百度的时候,其实背后可能就有BFE在支持。BFE每天要处理的转发请求接近1万亿,峰值QPS超过1000万,连春晚的208亿互动流量都扛下来了,实力之强可见一斑。

除了“海纳百川”,作为综合的流量转发平台,BFE平台还集成了4大功能:

1、流量接入和转发:支持HTTP、HTTPS、HTTP/2、QUIC等多种协议,并支持强大的应用层路由能力;

2、流量全局调度:支持由外网流量调度和内网流量调度共同构成的全局流量调度系统;

3、安全和防攻击:支持黑名单封禁、精细限流和应用层防火墙(WAF)等多种防攻击能力;

4、实时数据分析:支持分钟级的超高维度时序报表。

另据了解,BFE转发引擎从2012年开始研发,并于2014年使用Go语言完成重构,和业界普遍使用的Nginx开源软件相比,BFE的研发效率更高,系统的安全和稳定性也优于后者。 此外,BFE在设计中,还特别增加了企业级应用场景的考虑,比如转发场景的直接支持、多租户的支持、 结构化的配置、丰富的监控探针等。

目前,BFE已开源并支持以下重要能力:

1、主流网络协议接入:支持HTTP/HTTPS/SPDY/HTTP2/WebSocket等、支持TLS/HTTP/ WebSocket反向代理模式;

2、可扩展插件框架:通过可扩展插件框架,快速定制开发扩展模块,满足业务定制化需求,并内置重写、重定向、流量修改、封禁等丰富插件;

3、基于请求内容的分流:基于领域专有语言的分流规则,满足复杂业务场景定制化流量转发,并支持完备的分流条件原语集,包括基于请求内容(URI/Header/Cookie等)以及请求上下文(IP、协议、标签、时间等)的条件原语;

4、灵活的负载均衡策略:支持集群级别负载均衡及实例级别负载均衡,实现多可用区容灾及过载保护,并内置加权轮询、加权最小连接数策略,基于IP或请求内容识别用户实现会话保持。

为什么要开源?

BFE功能强大、灵活、安全、稳定,并支持企业级应用,对众多开发者和B端企业来说,无疑是非常趁手的利器,但很多小伙伴也奇怪,这么核心的技术,百度为什么要开源呢?

其实这与技术领域开放共赢的理念有关,“开源”即开放源代码,任何人可以在源代码的基础上进行学习与修改,这其实是一个双赢的行为,举例来说一个码农专门检查代码bug,很明显耗时耗力而且不能杜绝纰漏,而一群开发者群策群力,效率的提升则是惊人的。而开发者群体也得益于开源项目,共同推动整个互联网技术的进步。

因此,“开源”成为了国内外科技巨头们的共识,百度在开源之路的大动作也不仅仅只有BFE,比如,百度拥有国内唯一开源开放、功能完备的深度学习平台飞桨,百度Apollo的Apollo开源代码也被97个国家超过1.5万名开发者使用。

当下,智能时代已经到来,中国AI发展主要面临着专利许可费高昂、专业人才有限等众多挑战,而开源提供了一个契机,加速技术进化和应用落地。根据最新发布的Github年度报告,我国在开放源代码的使用量上遥遥领先,开发者fork和clone的项目比去年多了48%。

这离不开百度这些企业的贡献,他们孜孜不倦地研发更新、更好的技术,并将他们开放出来,让无数开发者和企业都能中获益。

百度BFE团队的一位工程师说,百度给了工程师最大的尊重和自由,也愿意为了技术研发承担最大的风险。能够在百度、在中国做全球最领先的技术,他感觉无比骄傲!