最近正好在写文整理,搜到了这个问题,顺便粘贴一份放到这里。其实这个我已经写过一次,不过重复总结,每次的感觉都不一样。

Go 的应用领域,总结出来主要是下面几个领域。

微服务

现在越来越多新的项目采用微服务架构,前面介绍的优秀项目中也看到很多 Go 提供的微服务框架,如 git-kit、go-micro 等。

举一些具体公司的例子。

比如今日头条,2017 的一篇文章 今日头条使用 Go 构建了千万级微服务,其中说到有 80% 的流量都跑在 Go 上,其中提到头条还开发了自己的一套微服务框架;还有 B 站也是采用的 Go 开发,这个就不用多介绍了,大家应该都懂的。

云平台

云服务很多都是采用 Go 进行开发,比如国内著名的七牛云是全站采用 Go 开发;还有如盛大 CDN、阿里云 CDN 等。而且云平台基础设施如 docker、kubernetes 等也是 Go 开发;

七牛云的 CEO 是国内早期第一批敢吃螃蟹的人,为 Go 在国内的推广做出了极大的贡献。

Web

net/http

区块链

当前两个主流的区块链框架,分布式记账本框架 hyperledger 和以太坊合约框架 go-ethereum 都是使用 Go 开发;

某招聘网站的区块链职位要求技能的分析,如下图。

分布式

诸如数据库中间件、分布式存储、代理服等项目很多是采用 Go 开发,比如前面的介绍 cockroachdb、etcd等;

京东云消息推送系统、云存储等都有使用Go做开发。360 的推送服务也在使用,Go 官方有篇博客 https://blog.golang.org/qihoo 就是出自他们。

其他

除了上面介绍的这些,其实很多领域都能看到 Go 的影子,如直播领域、游戏开发、AI 算法等等,在其中 Go 为后台的调度系统、任务处理,批量的数据计算、系统监控等都提供了各种优秀的解决方案。

一个例子,比如知乎也使用 Go 进行重构了自己的推荐系统,查看文章 舍弃 Python,为什么知乎选用 Go 重构推荐系统?