Go始于2007年9月,当时Robert Griesemer,Ken Thompson开始讨论一种新语言,以解决google在日常工作中面临的工程挑战。当时正在编写的软件通常是一个网络服务器-一个与数百台其他服务器交互的程序-在其生命周期内,成千上万的程序员可能会参与编写和维护它。但是当时正在使用的现有语言似乎没有提供正确的工具来解决这种复杂环境中面临的问题。
当2009年11月首次向公众发布Go时,Go语言的未来是否会被广泛采用或是否会影响未来的语言,都是个未知数。回顾2020年,Go在两方面都取得了成功:它在Google内部和外部都得到了广泛使用,其网络并发和软件工程方法对其他语言及其工具产生了显著影响。
事实证明,Go的影响范围比预期的要广泛得多。它在行业中的增长令人瞩目,并为Google的许多项目提供了动力。
Google内置Go的最早生产用途出现在2011年,那一年启动了Go on App Engine(https://blog.golang.org/appengine),并开始通过Vites服务YouTube数据库流量(https://www.youtube.com/watch?v=midJ6b1LkA0)。当时,Vitess的作者说,Go正是他们所需的简单网络编程,高效执行和快速开发的结合,而且如果不是Go,他们可能根本无法构建系统。
第二年,Go取代Sawzall进行Google的搜索质量分析。当然,Go还推动了Google在2014年开发和推出Kubernetes。
相关链接:
http://www.unofficialgoogledatascience.com/2015/12/replacing-sawzall-case-study-in-domain.htmlhttps://cloudplatform.googleblog.com/2014/06/an-update-on-container-support-on-google-cloud-platform.html
https://cloudplatform.googleblog.com/2014/06/an-update-on-container-support-on-google-cloud-platform.html
在过去的一年中,来自全球的中级用户报告了16个案例研究(https://go.dev/solutions#case-studies),讨论了他们如何使用Go大规模构建快速,可靠和高效的软件。今天,又添加来自Google内部团队的三个新案例研究:
这些故事或许能为Go开发人员社区提供更深入的见解,以了解Google团队选择Go的原因,使用Go的目的以及团队做出这些决定的不同途径。