Go开篇

作者: running_sheep | 来源:发表于2020-09-09 16:15 被阅读0次

Go语言的学习完全是为了学分布式存储。
学分布式存储的原因是因为公司云改,组里开始大刀阔斧的自研分布式存储,而我除了ceph什么都不知道。于是花了几周的时间去看论文,看别人自研的分布式存储是怎么做的。从经典的GFS,过时一点的TFS,规模比较大的Azure,Amazon EBS,OceanBase,到令人叹为观止的Pangu2.0(时延500微秒,百万iops),且不说里面涉及到的新硬件,新概念,RDMA,SPDK,DPDK,我连最最基础的分布式软件的原理都一知半解,深感焦虑。上来就看别人软件架构并不是一个好的选择,因为有一个问题会始终困扰你:“为毛这些人都这么设计架构,为啥都在讲paxos,raft,为啥都涉及单点的讨论”。所以必须沉下心好好学分布式原理,补上这一课。感谢知乎b站,让我寻到了学习的方向---MIT6.824。说了一大堆,终于进入正题,为啥要学Go语言,很简单,因为这门课的lab老师建议用Go完成,我就是这么的听话,理由就是如此朴素。

既然是新语言,如何开始?自然就是装软件,配环境变量,安装工具包,了解编译方法,测试运行。好吧,那就开始了。

1.软件安装
https://golang.google.cn/

2.环境变量配置
打开系统面板-》高级设置-》环境变量-》新增GOPATH和GOROOT
GOPATH就是工作路径
GOROOT就是安装路径
配置好之后
go env可以用来测试

3.安装工具包
git clone https://github.com/golang/tools $GOPATH/src/golang.org/x/tools
go build golang.org/x/tools

*因为有墙的问题,所以有一些依赖包是需要手动装的,装的方法也不难:
cd进入$GOPATH/src/golang.org/x/
git clone 对应包的git地址即可
一般这些git包可以在https://github.com/golang/找到

如果我想安装godoc,还可以这么办
go get golang.org/x/tools/cmd/godoc
装好后,可以本地浏览器访问doc
godoc -http=:6060 -play

*linux安装godoc的方法

mkdir -p $GOPATH/src/golang.org/x
cd $GOPATH/src/golang.org/x
git clone https://github.com/golang/tools.git
cd tools/cmd/
go install ...

4.IDE
我最爱的编译器那非sublime莫属,灵活轻便,使用sublime text需要安装GoSublime
首先手动下载插件
git clone https://github.com/DisposaBoy/GoSublime.git](https://github.com/DisposaBoy/GoSublime.git
找到插件安装位置
选中Preferences->Browse Packages… **
然后把GoSublime放到这个目录,重启IDE
选中Preferences->Package Settings->GoSublime->Settings-User
配置goroot和gopath
重启sublime,发现sublime下方出现报错,缺少margo
解决方法:
1、选中 Preferences->
Browse Packages… ** 并点击
2、创建目录 GoSublime\src\margo
3、将 GoSublime\src[margo.sh](http://margo.sh/)\extension-example\extension-example.go 复制粘贴为 GoSublime\src\margo\margo.go
重启sublime即可

5.编译运行
go build与go run命令去编译、编译并执行hello.go程序

相关文章

  • Go开篇

    Go语言的学习完全是为了学分布式存储。学分布式存储的原因是因为公司云改,组里开始大刀阔斧的自研分布式存储,而我除了...

  • Go基础技术

    Go - 开篇 Go语言是Robert Griesemer,Rob Pike和Ken Thompson于2007年...

  • 开篇--初识Go语言

    疫情下的选择 编者实际接触Go语言始于2020年3月12日,在此之前主要以C/C++作为开发语言,涉及产业为汽车工...

  • 18-Go语言和C语言交叉访问

    Go语言中调用C语言函数 在Go语言开篇中我们已经知道, Go语言与C语言之间有着千丝万缕的关系, 甚至被称之为2...

  • Go教程:第一篇介绍Go

    第一篇: 介绍 本文是我们《Golang系列教程》开篇文章,文章中讲介绍Go语言,并讨论Go和其他语言之间的优劣性...

  • GO语言学习开篇记录

    谷歌是个好东西,神马都有。只要你输对关键字 就入坑GO语言开始,搜索关键字列表,算是自己学习的心路体现 字符串格式...

  • Go语言设计模式之开篇

    开篇之前推荐一本书《Head First 设计模式》,真是一本神书,这本书里面把设计模式讲很透彻,唯一美中不足的是...

  • go-zero源码系列-开篇

    这两年一直在关注golang这门语言,初次接触到go-zero是在B站看go夜读系列作者关于go夜读的分享,整体讲...

  • Docker的使用(1)

    开篇 Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。 Docker ...

  • Sentinel-Go 源码系列(一)|开篇

    大家好呀,打算写一个 Go 语言组件源码分析系列,一是为了能学习下 Go 语言,看下别人是怎么写 Go 的,二是也...

网友评论

      本文标题:Go开篇

      本文链接:https://www.haomeiwen.com/subject/gfmeektx.html