随着AWS Lambda等主要云提供商开始支持Go,出生于 谷歌 的Golang正迅速成为许多云原生操作的首选语言。
Steve Francia于2016年加入Google,成为Go的产品负责人,最近分享了Go在云运营和其他领域的使用情况。
同时也分享了Go云开发工具包的最新情况,同时探讨了这样一个命题:Go不仅是云基础设施的语言,甚至正在成为整个云的语言。
Q1:你曾经是 Docker 的副总裁兼首席运营官,你认为Go在Docker和Kubernetes中扮演什么角色。
A: 是的,我现在不在参与到Docker运营,但我可以说作为Go生态系统的一员,Go在Docker、Kubernetes、Istio和许多其他云相关技术的创建中都发挥了重要作用。事实上,你知道,我认为可以说现代云是用Go编写的。几年前,一位分析师写道,Go是云基础设施的语言,我认为这已经被证明是绝对正确的——大多数云基础设施的东西都是用Go编写的。
我们越来越多地看到,Go不仅是云基础设施的语言,而且是整个云的语言。与其他语言相比,我们看到云上的Go应用程序得到了更广泛的应用,它非常适合云,内置了异步功能。它的原生功能集非常适合云中非常常见的 微服务架构 – 以及它的性能和成本节约。所以这种三重特性集对很多人来说都是一个巨大的吸引力,吸引他们用Go来构建云应用程序。
Q2:大家对Google内部使用Go有什么感觉?我知道Go在Google的生产中被广泛使用。那么Google的开发者对Go有什么看法呢?
A: 你懂得,我们内部使用自己创建的语言一起工作感到非常兴奋。Google内部一直都非常支持Go,而且有很多稳定的应用,Go在整个公司很多地方使用,但我可提供的细节不多。
这是一个有趣的地方,因为很明显,我代表Go团队,但我们也是由云供应商之一的谷歌赞助并参与其中。作为其中的一部分,我们努力保持中立。
Q3:那么,Go现在与主要云供应商的关系如何呢?
A: 今年我们以Go作为云的语言,来构建来多个云应用程序标准库的项目。今天早上刚确定一个名字,“Go Cloud Development Kit”,实际上它就像云的标准库,在本季度末会宣布一些更重要消息。
现在与一部分用户进行前期测试,项目也被集成到许多主要 开源项目 中,其中一个与我有关,但(笑脸.jpg)实际我并没参与其中。我们最近使用Go Cloud Development Kit库添加了对云发布的支持。Hugo是我们用Go编写的网站引擎之一。
就像Go标准库一样 – 你可以编写一个应用程序,然后在Mac或Linux、Windows或其他架构上编译它,这样就可以运行,它运行时不需要任何额外的代码。所以,Go标准库提供了真正的可移植性。我们的目标是对云做同样的事情。
最初,我们支持 AWS,Azure和Google云平台。同时我们也正在进行开放式开发,我们已经与其他一些云提供商讨论了为其提供自己的后端。我们也正在与 微软 合作,所以我们已经得到了来自云提供商的贡献。
这是我们正在进行的一项倡议,我们认为它非常重要。
Q4:去年11月份, GitHub 的年度“ State Octoverse ”报告得出结论,今年的Go贡献者比去年多了1.5倍。你是否也了解昵?
A: 是的,在过去的18个月里,我们看到Go用户有了很大的增长。据跟踪所有这些数据的Stack Overflow调查显示,从2017年到2018年,这个数字增长了76%。
GitHub另外一个指标,Pull请求数据,Go也显著的增长。
Q5:甚至从2016年到2017年,Go在GitHub上新增了96,879个Pull request,增长了51.4%(达到285,000个)。但是你对现在Go社区中正在发生的事情有什么看法呢?
A: 是的,我们看到了非常显着的增长……
来自GitHub2.0的第四季度统计数据, 成为Go的一员是一个激动人心的时刻。 像 IntelliJ ,微软的Visual Studio Code,JFrog Artifactory这样的供应商都开始意识到Go是许多开发人员想要使用的,因此他们已经构建并发布了支持的云产品。显然,云平台非常懂Go,并且正在创建解决方案,通常是先使用Go。
这是一个激动人心的时刻。在社区方面,我们看到全世界都在努力。沙龙会议的数量正以每年30%的速度显著增长。今年我们在全球范围内有15到20个沙龙,参加人数也在增加,所以这是一个非常激动人心的时刻。所有的会议都是由当地社区成员组织的,这是一项非常基层的工作,我们在南美用英语举办沙龙,在日本用日语举办沙龙,在中国用汉语举办沙龙,在世界各地,用各种语言举办沙龙……