转载

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

文 / Steve Francia,Go Team

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

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 系列活动  可以参加!

:point_down: 错过了要等一年, 点击下图立即报名 :point_down:)

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

如果您想详细了解 本文提及 的相关内容,请参阅以下文档。这些文档深入探讨了这篇文章中提及的许多主题:

  • Go 开发者中心

    https:// go.dev

  • Docker

    https://cloud.google.com/anthos/

  • Hugo

    https://gohugo.io/

  • Kubernetes

    https://kubernetes.io/

  • Anthos

    https://cloud.google.com/anthos/

  • 美国运通
    https://go.dev/solutions/americanexpress/

  • Dropbox
    https://blogs.dropbox.com/tech/2014/07/open-sourcing-our-go-libraries/

  • 纽约时报
    https://open.nytimes.com/introducing-gizmo-aa7ea463b208

  • Salesforce
    https://www.zdnet.com/article/salesforce-why-we-ditched-python-for-googles-go-language-in-einstein-analytics/

  • 塔吉特百货
    https://tech.target.com/infrastructure/2018/06/18/Recommending-GoLang-at-Target.html

  • 第一资本
    https://medium.com/capital-one-tech/a-serverless-and-go-journey-credit-offers-api-74ef1f9fde7f

  • Monzo
    https://monzo.com/blog/2016/09/19/building-a-modern-bank-backend

  • Twitch
    https://blog.twitch.tv/en/2016/07/05/gos-march-to-low-latency-gc-a6fa96f06eb7/

  • IBM
    https://developer.ibm.com/messaging/2019/02/05/simplified-ibm-mq-applications-golang/

  • 优步
    https://eng.uber.com/aresdb/

  • Mercado Libre
    http://go.dev/solutions/mercadolibre

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

原文  http://mp.weixin.qq.com/s?__biz=MzAwODY4OTk2Mg==&mid=2652051589&idx=1&sn=8b300002624c84a7038e0ff13d548ce3
正文到此结束
Loading...