随着AWS Lambda等主要云供应商支持Go,诞生于谷歌的Go编程语言正迅速成为许多云原生应用的首选语言。 Steve Francia于2016年加入Google,成为Go的产品负责人,最近他分享了其在云平台应用和其他地方的使用情况。
他还分享了Go云开发工具包的最新状态更新,同时深入探讨了Go不仅是云基础架构的语言,它甚至还成为整个云时代的编程语言。
Google Go Lead Steve Francia
我想问你关于Go在Docker和Kubernetes开发中的角色。您曾经是Docker的副总裁兼首席运营官…
是的,我个人已不再参与Docker,但我可以说作为Go生态系统的一员,你知道 - Go在创建Docker,Kubernetes,Istio以及许多其他与云相关的技术上所扮演的重要角色。事实上,你知道,我认为我们有理由说现代云是用Go编写的。几年前,一位分析师写道,Go是云基础架构的语言,我认为这已被证明是绝对正确的 - 大多数云基础架构都是用Go编写的。
而且我们越来越多地看到Go不仅是云基础设施的语言,而且是整个云的语言。我们看到越来越多的Go云应用程序在云上被接纳,这远高于其他语言的应用。我们也看到很多人都希望使用Go。它非常适合云,内置异步。它的原生功能集非常适合云中非常常见的微服务架构 - 以及它的性能和节省成本。因此,对于那些要使用Go构建云原生应用的人来说,这些特性集非常吸引人。
Google内部对Go的感觉如何?我知道Go广泛用于Google的生产环境。那么Google开发者对Go的看法是什么?
你知道,谷歌一直都支持Go。我觉得使用我们内部创建的语言会很兴奋,你知道吗?我们在Google内部看到Go被良好而稳定的采用。我可以提供的细节不多,但Go在整个公司有很多地方在使用。我们对此感到非常兴奋…
这是一个有趣的地方,因为很明显,我代表的是Go团队,但我们也是,你知道的,由谷歌或其部分赞助,Google是云供应商之一。作为其中的一部分,我们会努力保持中立。
那么Go现在在主要的云服务提供商那处于什么位置?
我们今年一直在努力的一个令人兴奋的项目是 - 以Go作为云的语言 - 我们已经构建了一个可能是云应用程序标准库的项目。我们称之为 - 让我们看看,我们今天早上刚刚确定了一个名称,所以我想要完全正确…这就是“ Go Cloud Development Kit。”实际上,它就像是云的标准库。我们希望在本季度晚些时候宣布更重要的事情。
现在我们正在与一部分用户进行早期测试。它被集成到一些主要的开源项目中,其中一个与我有关,但是(笑)我实际上没有参与其中。Hugo是我们用Go编写的更受欢迎的网站引擎之一,我们最近使用Go Cloud Development Kit库添加了对云发布的支持…
就像Go标准库可能交叉一样 - 你知道,你可以编写一个应用程序,只需为Mac编译它,为Linux或Windows或不同的体系结构编译它,它就可以运行,并且它运行时没有任何额外的代码。所以,你知道,Go标准库提供了真正的可移植性。我们的目标是为云做同样的事情。
最初,我们支持三巨头 - 亚马逊,Azure和谷歌云平台。我们也正在进行开放式开发,我们已经与其他一些云提供商讨论了为其提供自己的后端。我们也正在与微软合作,因此我们已经为云计算提供商做出了贡献。
这是我们正在努力的一项我们认为非常重要的举措。
我们在9月份进行了一项调查,发现有27%的无服务器开发人员表示他们计划在未来18个月内使用Go。你有没有看到任何有趣的Go项目出现?
是的,绝对有很多不同的方面,在这些领域Go实际上已经产生了相当大的影响。我们经常首先考虑云,但Web也是一个相当重要的地方,这方面有许多Go项目都发挥重要作用。同样,你知道 - 谈论这个很有意思,但即便加密货币空间也被Go打乱了。以太坊主要用Go编写。很多网络项目都是用Go编写的 - 当然还有Kubernetes和Docker以及Istio …
11月,GitHub的年度“ Octoverse状态 ”报告得出结论,今年撰写Go的贡献者比去年增加了1.5倍。你是否也看到新Gopher的人数大增?
是的,我们看到Go用户比去年增加了很多 - 真的,18个月。你知道,所以我们有一些数字。根据跟踪所有这些事情的Stack Overflow调查,从2017年到2018年增长了76%。
[Steve后来根据Stack Overflow开发人员调查中Go用户的百分比向我们提供了这个计算方法 - 乘以Evans Data对开发人员总人数的估计。
2018年
所有受访者:7.1%使用Go
估计Go开发人员:23M * 7.1%= 1.633M
2017年
所有受访者(第二个标签):4.2%使用Go
估计Go开发者:22M * 4.2%= 924K
____________________________________________
同比增长= 1.633M / 924K = 76%
而且我们已经看到了很多其他的东西。GitHub是另一个强大的指标,随着GitHub的拉取请求,Go看到了非常显着的增长…
即使从2016年到2017年,Go也在GitHub上开了96,879个Pull请求 - 增加了51.4%(达到285,000)。但是你现在对Go社区发生的事情有什么感觉?
在这一点上,它是GitHub的#4语言,通过pull请求。这是非凡的。
来自GitHut 2.0的第四季度统计数据
所以是的,我们看到了非常显着的增长…
成为Go的一员是一个激动人心的时刻。像IntelliJ,微软的Visual Studio Code,JFrog Artifactory这样的供应商都开始意识到Go是许多开发人员想要的地方,因此他们已经构建并发布了支持产品。我们从其他许多供应商那里看到了这一点。显然,云平台非常了解Go,并且正在创建解决方案,通常首先使用Go。
这是一个激动人心的时刻。在社区方面,我们在世界各地都看到了很多努力。会议数量显着增长,同比增长约30%。我不记得确切的数字,但我认为今年全球有15到20个会议,参加人数也在增加,所以参加会议真的是一个激动人心的时刻。所有的会议都是由社区成员组织的,所以这是一个非常基层的努力…我们在南美洲以他们的母语,日本的母语,中国的母语,以及世界各地的会议,一个不同的语言…
真正的是将Go带给人们,带到他们所在的地方。