Go语言的应用

Python08

Go语言的应用,第1张

Go语言由Google公司开发,并于2009年开源,相比Java/Python/C等语言,Go尤其擅长并发编程,性能堪比C语言,开发效率肩比Python,被誉为“21世纪的C语言”。

Go语言在云计算、大数据、微服务、高并发领域应用应用非常广泛。BAT大厂正在把Go作为新项目开发的首选语言。

Go语言应用范围:

1、服务端开发:以前你使用C或者C++做的那些事情,用Go来做很合适,例如日志处理、文件系统、监控系统等

2、DevOps:运维生态中的Docker、K8s、prometheus、grafana、open-falcon等都是使用Go语言开发

3、网络编程:大量优秀的Web框架如Echo、Gin、Iris、beego等,而且Go内置的 net/http包十分的优秀

4、Paas云平台领域:Kubernetes和Docker Swarm等

5、分布式存储领域:etcd、Groupcache、TiDB、Cockroachdb、Influxdb等

6、区块链领域:区块链里面有两个明星项目以太坊和fabric都使用Go语言

7、容器虚拟化:大名鼎鼎的Docker就是使用Go语言实现的

8、爬虫及大数据:Go语言天生支持并发,所以十分适合编写分布式爬虫及大数据处理。

极客时间的GO语言进阶训练营是很不错,知识内容涉及比较全面,从编程语言到中间件、系统设计再到架构都安排了相关课程,老师们在课程中不讲语法和用法,重点传递设计原理和最佳实践,讲课的过程中贴合工作场景,分享真实的干货案例,启发学员的思维让其自主进行学习,还帮学员建立系统大局观,有助于学员深层次的提升。

packagemainimport("fmt""github.com/garyburd/redigo/redis")funcmain(){conn,err:=redis.Dial("tcp","127.0.0.1:6379")iferr!=nil{panic(err)}deferconn.Close()conn.Do("SET","app1","test1")conn.Do("SET","app2","test2")val,err:=redis.Strings(conn.Do("KEYS","app*"))fmt.Println(val,err)conn.Send("MULTI")fori,_:=rangeval{conn.Send("DEL",val[i])}fmt.Println(conn.Do("EXEC"))}Go是Google开发的一种编译型,可平行化,并具有垃圾回收功能的编程语言。罗布·派克(RobPike),罗伯特·格瑞史莫(RobertGriesemer),及肯·汤普逊于2007年9月开始设计Go语言,稍后IanLanceTaylor,RussCox加入项目中。Go语言是基于Inferno操作系统所开发的。[4]Go语言于2009年11月正式宣布推出,成为开放源代码项目,并在Linux及MacOSX平台上进行了实现,后追加Windows系统下的实现。