Go 语言 10 岁啦:Go 在企业中的发展历程

谷歌开发者 2019-12-03 11:31

文 / Steve Francia,Go Team


Go 语言的地鼠吉祥物,出自知名插画师 Renee French 之手。本图改编自 Egon Elbre 的一幅画


最近我们迎来了 Go 的十周年纪念日,我们有幸与全球开发者社区共同庆祝这一里程碑。


Gopher 社区举办了一系列大会来庆祝 Go 的十周年纪念日,例如山景城的 Gopherpalooza 大会和圣地亚哥的 KubeCon 大会,以及在世界各地的数十场大会。

  • Gopherpalooza 大会
    http://gopherpalooza.com/

  • KubeCon
    https://events19.linuxfoundation.org/events/kubecon-cloudnativecon-north-america-2019/


在这一里程碑式的重要时刻,我们将花点时间来回顾 Go(也称为“golang”)取得的惊人发展和进步,看看它如何从最初由 Google 创建及开源,再到收获众多尝试者和粉丝,进而成为现今全球企业每天处理重要工作时不可或缺的工具。



首次接触 Go?

Go 是一种开源的编程语言,旨在帮助开发者大规模构建快速、可靠且高效的软件。这种语言由 Google 创建,现由 2100 多位贡献者提供支持,他们主要来自开源社区。Go 语言在语法上与 C 语言类似,但它增加了内存安全、垃圾回收、结构形态和 CSP-style 并发计算等优点。


最重要的是,Go 语言是专为提高多核、联网计算机和大型代码库的工作效率而设计的,可帮助程序员快速扩展软件 开发 和 部署。



数百万 Go 用户!

Go 在全球拥有上百万用户,他们遍布各个行业、经验领域和工程学科。Go 语言具有语法简洁明了、使用容易、格式简单、速度快等优点,这使它成为发展最迅速的语言之一。此外,它还有一个繁荣的开源社区。


随着 Go 的使用量不断增长,越来越多的基础服务也随之建立。基于 Go 构建的热门开源应用包括 DockerHugoKubernetes。Google 的混合云平台 Anthos 也是基于 Go 构建而成。


Go 最初用于支持大量 Google 服务和基础架构。如今,Go 的用户包括美国运通Dropbox纽约时报Salesforce塔吉特百货第一资本MonzoTwitchIBM优步以及 Mercado Libre 等知名企业。Go 已成为众多企业在进行云端构建时的首选语言。



Go 在企业中的应用示例

Go 在 Mercado Libre 的应用就是一个很棒的例子,该公司使用 Go 扩展电子商务生态系统并实现其现代化革新、提高效率并缩短系统响应时间。


Mercado Libre 的核心 API 团队负责在公司的微服务解决方案的中心构建和维护规模最大的 API。过去,该公司的许多堆栈都使用基于关系型数据库支持的 Grails 和 Groovy。然而,这种庞大的多层框架很快便遇到了伸缩性问题。


将该旧架构重构成 Go 这一全新精简型框架来构建 API,不仅能简化中间层,还可产生巨大的性能优势。例如,一个大型 Go 服务现能够在每台机器上运行 70000 个请求,但仅占用 20 MB RAM。


“Go 简直棒极了,”Mercado Libre 的软件工程经理 Eric Kohan 表示,“它功能强大,易于学习,而且拥有后端基础架构,可为我们提供出色的伸缩性。”


Mercado Libre 利用 Go 将用于该服务的服务器数量缩减到原来的八分之一(从 32 台服务器降到 4 台服务器),同时还降低了每台服务器的配置(将 CPU 核心数从原来的 4 个 降到现在的 2 个 )。该公司利用 Go 减少了 88% 的服务器,并将剩余服务器上的 CPU 核心数量缩减一半,从而节省了大量成本。


借助 Go,Mercado Libre 的构建速度提高了 3 倍 (3x),而测试套件的运行速度则惊人地提升了 24 倍。这意味着,该公司的开发者可以在做出变更后,以远超以往的速度构建并测试该变更。


如今,Mercado Libre 公司大约有一半数据流量均由 Go 应用处理


“我们非常赞成 Go 语言的宏观哲学,”Kohan 说,“我们喜欢 Go 的简洁,它具有非常清楚的错误处理方式,而这正是开发者们的福音,因为这样就能在生产环境中运行更加安全可靠的代码。”



访问 go.dev 了解更多

看到 Go 社区在开发者使用、企业采纳、软件包贡献等诸多方面起到的推动作用,我们倍感高兴。


在此基础上,我们很高兴推出全新的 Go 开发者中心 - go.dev


在这里,您可以找到 Go 软件包和模块的集中化信息、该语言丰富的入门学习资源,以及 Go 在企业中的重要使用案例。


使用 Go 大规模构建快速、可靠且高效的软件的案例有很多,Mercado Libre 的近期用例只是其中一个。


如需详细了解 MercadoLibre 成功使用 Go 的案例,请参阅完整案例研究

  • 完整案例研究 

    https://go.dev/solutions/mercadolibre


对了,想了解更多信息,还有我们的 DevFest 系列活动 可以参加!

谷歌开发者 Google 中国官方账号。汇集 Android, Flutter, Chrome OS, AI 等开发技术,以及 Google Play 平台出海相关信息。
评论
热门推荐
相关推荐
我要评论
0
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦