Go 应用领域 鉴于 Go 语言的特点和设计的初衷,Go 语言作为服务器编程语言,很适合处理日志、数据打包、虚拟机处理、文件系统、分布式系统、数据库代理等;网络编程方面,Go 语言广泛应用于 Web 应用、API 应用、下载应用等;除此之外,Go 语言还适用于内存数据库和云平台领域,目前国外很多云平台都是采用 Go 开发。
以前你如果使用 C 或者 C++做的那些事情,用 Go 来做很合适,例如处理日志、数据打包、虚拟机处理、文件系统等。
现在越来越多新的项目采用微服务架构,前面介绍的优秀项目中也看到很多 Go 提供的微服务框架,如 git-kit、go-micro 等。 举些具体公司的例子。 比如今日头条,2017 的一篇文章今日头条使用 Go 构建了千万级微服务,其中说到有 80%的流量都跑在 Go 上,其中提到头条还开发了自己的一套微服务框架;还有 B 站也是采用的 Go 开发。
云服务很多都是采用 Go 进行开发,比如国内著名的七牛云是全站采用 Go 开发;还有如盛大 CDN、阿里云 CDN,华为云等。而且云平台基础设施如 docker、kubernetes 等也是 Go 开发;
网络编程这一块目前应用最广,包括 Web 应用、API 应用、下载应用,而且 Go 内置的 net/http 包基本上把我们平常用到的网络功能都实现了。 曾经的 web 领域主要是 Java、C#和 PHP 这三大语言。而现在基本每种语言都有自己完善的 web 生态,Go 也是如此,标准库已经自带成熟简单的 net/http 包。而且 Go 的主流 Web 开发框架也有很多,比如 gin、beego、iris 等等。
当前两个主流的区块链框架,分布式记账本框架 hyperledger 和以太坊合约框架 go-ethereum 都是使用 Go 开发; 再比如 fabric 是目前最知名的联盟链, 也有 go 语言的版本 某招聘网站的区块链职位要求技能的分析,如下图。
诸如数据库中间件、分布式系统/分布式存储、代理服等项目很多是采用 Go 开发,比如前面的介绍 cockroachdb、etcd 等; 京东云消息推送系统、云存储等都有使用 Go 做开发、360 的推送服务也在使用。 就是出自他们。
除了上面介绍的这些,其实很多领域都能看到 Go 的影子,如直播领域、游戏开发、Al 算法等等,在其中 Go 为后台的调度系统、任务处理,批量的数据计算、系统监控等都提供了各种优秀的解决方案。 比如知乎也使用 Go 进行重构了自己的推荐系统,查看文章舍弃 Python,为什么知乎选用 Go 重构推荐系统? Go 不适合领域
Go 优秀项目 语言的目标是用于项目开发,并能打造出很多优秀的产品。那么,Golang 有哪些好像优秀的项目呢?不搜不知道,一搜吓一跳!列举一下我收集到的 golang 开发的优秀项目,如下:
国内大厂开源的 Golang 项目
|
|
来自: 新用户4369FNft > 《Go》