热门 Golang 应用:使用 Golang 制作的 6 个最佳应用
已发表: 2020-06-05Golang 编程语言(也称为 Go)快速且易于使用,正在迅速普及。 根据 Github 统计,在 2018 年至 2019 年间,围棋社区增长了 147%。 Golang 吸引了很多公司,因为它是为复杂的企业项目设计的。 那么,你究竟能用这种编程语言做什么呢?
在本文中,我们将仔细研究顶级 Golang 应用程序。 这些现实生活中的示例将帮助您了解 Google Go 如何成为您企业的正确选择!

探索移动应用的未来
免费获取报告!使用 Golang 开发的前 6 个应用程序
1. Golang 银行应用程序 – Monzo
大多数公司将 Golang 与微服务架构一起引入。 基于应用程序的在线银行 Monzo 的情况也不例外。 当他们在 2015 年 2 月首次开始设置应用程序时,他们专注于单一责任原则。 它指出每个模块都应该负责一个功能。 这种方法使应用程序更加稳定——这就是 Go 非常适合的地方。 Monzo 是一个从一开始就基于 Golang 构建的应用程序的经典示例。
随着 Monzo 的不断发展,Golang 帮助公司扩展了产品。 技术团队表示,Go “非常适合微服务架构”,因为它可以帮助他们创建细粒度的服务,这些服务加起来是一个稳定的应用程序。
Monzo 由 1,600 多个微服务组成。 该公司的高级工程师 Matt Heath 声称 Go 允许他们维护如此复杂的架构。 用他的话说,这种语言“非常简单 [...] 并且很容易 [...] 让人们参与进来” 。 事实上,Golang 以其低学习曲线而闻名——一些人声称开发人员可以在一个晚上内学习基础知识!
2. Golang 电商应用——Allegro
对于 Monzo,Go 从一开始就是主要语言。 对于自 1999 年成立的波兰电子商务巨头 Allegro 而言,Golang 的故事有所不同。快进到 2016 年,Allegro 技术团队一直在寻找一种有效的方法来创建非常快速的缓存服务。 他们决定尝试一些新的东西并选择 Golang 来完成这项任务。
Allegro 的大多数微服务都是用 Java 编写的,但团队愿意探索新事物。 他们之前曾参与过一个开源 Go 项目,并且很高兴看到 Golang 将如何处理更大的流量。
最后的结果是惊人的。 Go 帮助 Allegro将应用程序从 2.5 秒加速到不到 250 毫秒,这是最长的请求! Allegro 团队对 Golang 发誓,并很高兴在与 Go 相关的会议上分享他们的见解。
3. Golang 音乐应用——SoundCloud

SoundCloud 是一个专注于艺术家的音乐共享平台,是 Go 的早期采用者。 在所有顶级 Golang 应用程序中,以艺术家为中心的音乐共享平台 SoundCloud 是相当早的采用者。 早在 2012 年,他们就在 SoundCloud 上发表了一篇关于 Go 的文章。
尽管该应用程序主要基于 Ruby on Rails,但 SoundCloud 被认为是一家多语言公司,其后端添加了多种语言。 他们欣赏 Golang 作为一种所见即所得(所见即所得)的语言。 这使整个团队更容易理解软件并使维护过程更加高效。
更重要的是,SoundCloud 赞赏 Golang 的快速编译和静态类型。 通俗地说,这意味着开发、测试和部署应用程序的速度尽可能快。 该团队声称,这些快速流程意味着一些简单的想法可以在短短一小时内从白板变为生产。 令人印象深刻,不是吗?
4. Golang 约会应用 – Badoo
Badoo 在全球 190 个国家/地区拥有 4 亿用户,是世界上使用最广泛的约会网络。 这些数字需要高效的搜索算法——这就是 Golang 派上用场的地方。

为了提供尽可能流畅的搜索体验,Badoo 技术团队使用位图索引创建服务。 位图索引由代表实体(在本例中为约会应用程序的用户)及其参数(例如年龄或头发颜色)的多个位图组成。 这使得它非常适合寻找有这个、这个和那个的人的用户——比如说,25-30 岁、金发、身高超过 180 厘米的男性。 约会应用程序的天作之合,不是吗?
诀窍是:位图索引很难在许多流行的数据库管理系统中实现,例如 MySQL。 解决方案? 你猜对了:Golang。 位图索引通常用于 Pilosa,这是一个用 Go 编写的数据库管理系统。 无需过多介绍技术细节,Go 语言就可以顺利实现位图索引,这就是 Badoo 团队决定将其用于高维护产品的原因。
5. Golang 拼车应用——优步
是的,你没看错——甚至 Uber 也在使用 Golang 来提高他们的拼车服务质量。
该公司使用地理围栏进行地理定位。 地理围栏定义了具有特定要求的区域。 大多数时候,它适用于机场或特别繁忙的社区。 看看乌干达坎帕拉的这个地理围栏示例:
尽管 Node.js 是 Uber 的首选语言,但他们决定开始使用 Go 来提供这项服务。 该公司需要一些快速的东西,因为他们每秒要处理数十万个地理围栏查找请求! Golang 被证明是完美的选择,因为它可以同时在多个 CPU 内核上工作,而 Node.js 是单线程的。 换句话说,Go 语言可以同时做多件事。
事实证明,这个选择在很大程度上是成功的,Uber 团队很高兴使用 Golang。 它不仅速度更快,而且还使软件开发人员的工作效率更高。 当他们已经熟悉 Java、C++ 或 Node.js 时,他们将能够在几天内学习 Go。
当谈到应用程序的性能时,结果确实令人印象深刻。 2015 年新年前夜,Uber 的数据中心成功处理了 CPU 使用率仅为 35% 的峰值负载。 最重要的是,该公司可以吹嘘高达99.99% 的正常运行时间,停机时间仅由第三方库而不是 Golang 本身引起。
受到地理围栏成功的鼓舞,Uber 开始在其更多的微服务中实施 Golang。 例如,他们也在使用这种语言将乘客与合适的司机进行匹配。 它已成为他们在产品中创建新服务的最流行的语言。 可以肯定地说,就受欢迎程度而言,Uber 是顶级 Golang 应用程序之一。
6. Golang 项目管理应用——时间表
最后但同样重要的是,这是我们创建的 Golang 应用程序的示例。 Timesheets 是我们第一次用作内部工具的时间跟踪解决方案。 由于我们对此非常满意,因此我们决定与公众共享时间表。 该工具还可以与一系列其他工具集成,包括 Slack、Jira 甚至语音助手。
查看我们其他成功的项目
查看我们的产品组合在创建 Timesheets 时,Golang 是我们的首选。 我们想创建一个超轻、快速且足够的应用程序,而 Golang 的多线程使它变得更加容易。 更重要的是,当我们在一个存储库中使用公共部分时,我们可以同时运行不同的进程。 总而言之,Golang 显着加快了开发过程。
如何处理 Golang 应用程序开发
寻找顶级 Golang 开发公司? 无论你打算创造什么, 我们很乐意分享一些建议。 我们在使用 Go 开发应用程序方面的经验肯定会有所帮助。 欢迎随时联系了解更多详情! 我们希望这篇使用 Golang 制作的应用程序综述能给您带来启发。