APISIX 温铭:开源的本质是要拿开发者的杠杆|人物志
【CSDN 编者按】云原生已无处不在,《云原生人物志》是CSDN重磅推出的系列原创采访,我们关注云原生中每一个技术人、公司的身影。知微见著,窥见云原生价值与趋势。
第一期,我们采访了唯一由中国初创公司捐赠给 Apache 基金会的开源项目——APISIX 的联合创始人&CEO 温铭。在不改变原意的前提下,CSDN 对访谈进行了整理和编辑。
创业前,温铭已有10年的安全领域技术背景。虽然是做安全出身,但乐于分享的他从开源收获了更大的快乐和成就感,在采访中他提到,“第一重要是做让自己开心的事”。他分享了为何选择云原生领域技术创业,对技术与市场的思考,以及如何平衡社区与商业。以下为访谈全文:
技术背景
温铭:我大学是计算机专业,经历比较简单。大学毕业之后我去了金山毒霸工作了5年时间,主要做木马云查杀、反钓鱼,个人安全方面的工作。后面去了360的企业安全,从 toC 转到了 toB,2012-2017年工作5年,并发起成立360开源委员会。
开源已经成为一个不可逆的潮流,特别是在云原生时代,微软是一个很好的例子,微软在 Github 开源项目的贡献排在第一,全面拥抱开源。你如果在云原生时代没有拥抱开源,没有用开源组件去构建核心系统,就会被淘汰掉,因为云原生时代发展太快了。
我们觉得云原生是一个非常大的机会,就像 CSDN 的栏目《云原生人物志》,云原生是未来5-10年非常大的一个机会,我们希望在云原生领域不仅投身到开源里,也希望去做开源商业化的事情,做出更大的价值。如果只是单纯开源,背后没有商业利益的话是很难持久的,因为大家毕竟要吃饭养家。
创业
温铭:API 网关并不像操作系统、数据库这样有几千亿美元的市场,API网关最重要是能够感知用户的业务流量,交易、登陆、请求等等对用户是非常有价值的数据。作为企业流量后方的入口,API网关可以做API数据分析、API安全隐患分析等等。现在APISIX已经有40多个插件,我们开发了一个功能,可以用于产品与运维人员提出的需求,在API网关上做插件的编排,最终实现低代码。
APISIX 现在是 API 网关,在南北向流量(north-south traffic)上,很多用户已经用 APISIX 替代了 Nginx。未来希望在云原生网络层,只要有业务流量存在的地方就有 APISIX,比如 API 网关、ServiceMesh、K8s ingress-controller 等等,在云原生里如果想处理业务流量第一个想到 APISIX。同时,创业的一年多里,我们接触到很多企业用户,在云原生领域,对于大型互联网公司和传统企业来说,ServiceMesh 将是发展前景和商业化价值比较高的技术。
我们想让用户的流量请求更安全、更快速,在中国的语境里叫“666”,所以叫APISIX,并在2019年6月6日开源。我们将 APISIX 捐给了 Apache 软件基金会,APISIX代码的知识产权、专利、名字的商标也都转移给了Apache基金会,所以现在商业公司叫做 APISEVEN(支流科技),为了让用户知道商业产品和开源项目有关联性。
开源的初衷和思考
温铭:现在很多国内厂商选择开源时并没有完全想清楚为什么要这样做。开源有很多种不同的玩法,开源虽然是做PR(市场宣传)、做 marketing 很好的手段,但这不是最关键的。我知道国内很多开源项目经常说“我在 Github 关注度有多高”、”我写的文章阅读量有多高”,其实这些并不重要!重要的是让更多开发者和更多公司用你的项目,并为项目贡献,开源的本质是要拿开发者的杠杆。
比如 APISIX 主项目现在有130个 Contributor,commit 有30个,他/她们都是各个互联网里最顶级的工程师,APISIX不只是我们公司的十几个人,而是有100多个顶尖工程师一起做的开源项目,这是任何一个云厂商或者任何一家商业公司去做API网关所完全达不到的。所以不要看Github的文章阅读量有高,而是要看它撬动了多少开发者的杠杆,这是最重要的一个事情,APISIX这点做得比较好。
在云原生领域,如果国内云厂商只停留在使用,没有贡献,而只由谷歌、微软、AWS 等云计算大厂贡献云原生重要的关键组件,表面上云原生关键组件是开源的,但背后被某些大厂控制,把控整个项目的发展方向,会形成“新的垄断”。
我们希望学习华为和小米,例如华为对 Linux 内核的贡献排名全球前三,Hbase PMC 主席是小米员工,熟悉程度与话语权会更利于企业找到商业和开源之间的平衡。
加入 Apache 后,APISIX 今年的进展比我们想象得快,我们从去年进 Apache孵化器时只有20个代码 Contributor,现在已经有130个代码 Contributor,一年时间差不多翻了5、6倍,这个增长还是挺不错的。我们比较关心社区上的迭代。
Apache 的理念是社区比代码更重要。我和王院生去年主要精力都是在写代码,今年我们的精力主要是在 review(代码审查)和回复别人的 issue(问题),从单纯的工程师逐渐演变成一个社区里能够帮助别人成长、帮助别人写代码的角色。
近期,我们会将 K8s 的 ingress-controller 项目也捐给 Apache 作为 APISIX的子项目,我们不仅会做 API 网关,也会去做 K8s 的流量入口。
贡献者和PR都不是天上掉下来的
温铭:开源项目里最重要的一个意识是:开源需要强力的 PR,但不是传统意义上的10万+文章,而是需要多去和开发者交流,比如我们经常举办一些见面会、大会,做面对面的沟通。贡献者和他们提交的 PR(Pull Request)都不是天上掉下来的,需要鼓励和帮助。我们还有一个QQ群,里面有2000多个开发者每天提各种各样的问题。当你和开发者走得比较近的时候,他也愿意给你做一些贡献。
APISIX 的优点是架构清晰,维护成本低,二次开发成本也比较低,适合对大流量和低延迟有要求的公司。和很多 2B 厂商不太一样的是,APISIX 的免费用户和付费客户都是主动来找我们的,所以公司现在所有人都是开发,没有市场销售。
NASA JPL(美国国家航空航天局喷气推进实验室)、欧盟数字工厂都在使用APISIX。欧盟数字工厂的项目负责人是 APISIX 的 PMC(项目管理委员会),他专门写过文章、录过视频去推广和介绍 APISIX。
APISIX 有一个典型用户空中云汇,是做全球外汇的一家互联网金融公司,用户在全球各地,支付业务对于网关的低延迟要求非常高,横向对比后只有APISIX 可以满足它在低延时上的要求。APISIX 从开源到现在只有不到一年半时间,前面半年还不够稳定,但是空中云汇看中APISIX硬实力。
APISIX 首先满足用户在苛刻条件下、大并发条件下的硬核指标,不完善的功能和bug随后不停迭代,用户在真实场景中的需求和 BUG 反馈给开源社区,形成正向的迭代。
开源与商业如何平衡?
温铭:APISIX 的 API 网关灰度发布、双活等绝大部分功能都在开源版本,将底层最难、最硬核的开源出来,让社区里更多人使用,稳定性才能越高。商业版本只增加了一些插件、用户管理、多租户等功能。
对于国内的初创公司,人手不多,成功案例较少,客户会担心产品和服务的可持续性。说直接一点,就是我买了你的产品,你公司过了两年会不会挂了,没有人帮我维护产品,我就掉到一个大坑里去了。基础软件的开源项目没有文化障碍,在欧美市场接受度较高,但在中国,开源商业公司是一个新物种,大家对这种模式接受度不是很高,需要一些时间或案例去证明。
今年最大的收获是 APISIX 增加了100多个 Contributor,这是最开心的事,希望2021年的这个时候突破200个 Contributor。
APISIX 作为 Apache 顶级项目,明年目标是国际化,让更多欧美开发者了解使用 APISIX。
另一方面,我们希望吸引更多优秀开发者进来,在开源项目里,人是最重要的,我们希望更多优秀开发者贡献到 APISIX 的开源社区,也欢迎加入到我们背后的商业公司里来。
更多精彩推荐
☞开发者实测 M1 芯片报告:除了大型应用程序启动慢点,整体性能优秀!
☞她们,在字节跳动写代码
☞“跟风离职后,找不到工作了!”:好多同事离职,这家公司还值不值得待?
☞中招!330 万台老年机被植木马,背后黑幕细思极恐
☞重新认识云原生
☞Salesforce 为什么要收购 Slack?