运维最新(一)Go---介绍,环境搭建(Windows,Linux)GoLand(IDE),VScode,技术详细介绍

为了做好运维面试路上的助攻手,特整理了上百道 【运维技术栈面试题集锦】 ,让你面试不慌心不跳,高薪offer怀里抱!

这次整理的面试题,小到shell、MySQL,大到K8s等云原生技术栈,不仅适合运维新人入行面试需要,还适用于想提升进阶跳槽加薪的运维朋友。

本份面试集锦涵盖了

  • 174 道运维工程师面试题
  • 128道k8s面试题
  • 108道shell脚本面试题
  • 200道Linux面试题
  • 51道docker面试题
  • 35道Jenkis面试题
  • 78道MongoDB面试题
  • 17道ansible面试题
  • 60道dubbo面试题
  • 53道kafka面试
  • 18道mysql面试题
  • 40道nginx面试题
  • 77道redis面试题
  • 28道zookeeper

总计 1000+ 道面试题, 内容 又全含金量又高

  • 174道运维工程师面试题

1、什么是运维?

2、在工作中,运维人员经常需要跟运营人员打交道,请问运营人员是做什么工作的?

3、现在给你三百台服务器,你怎么对他们进行管理?

4、简述raid0 raid1raid5二种工作模式的工作原理及特点

5、LVS、Nginx、HAproxy有什么区别?工作中你怎么选择?

6、Squid、Varinsh和Nginx有什么区别,工作中你怎么选择?

7、Tomcat和Resin有什么区别,工作中你怎么选择?

8、什么是中间件?什么是jdk?

9、讲述一下Tomcat8005、8009、8080三个端口的含义?

10、什么叫CDN?

11、什么叫网站灰度发布?

12、简述DNS进行域名解析的过程?

13、RabbitMQ是什么东西?

14、讲一下Keepalived的工作原理?

15、讲述一下LVS三种模式的工作过程?

16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?

17、如何重置mysql root密码?

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以点击这里获取!

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

配置环境变量

在这里插入图片描述

三. 集成环境GoLand开发环境IDE

=======================================================================================

下载地址:

最新

老版本

优点:不需要第三方插件

缺点:收费

激活:方法一

汉化需要重启GoLand

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

改配置


可变大小ctrl+鼠标,调整大小

在这里插入图片描述

在这里插入图片描述

去掉参数提示

在这里插入图片描述

在这里插入图片描述

打开已经写好的文件

在这里插入图片描述

四. Visual Studio Code安装—VScode

=================================================================================================

免费

优点:有第三方插件

安装包https://code.visualstudio.com/Download

官网链接

https://az764295.vo.msecnd.net/stable/c185983a683d14c396952dd432459097bc7f757f/VSCodeUserSetup-x64-1.55.0.exe

我们看到前面的域名是az764295.vo.msecnd.net ,你只要将这个域名改为 vscode.cdn.azure.cn 就可以。

变成

https://vscode.cdn.azure.cn/stable/c185983a683d14c396952dd432459097bc7f757f/VSCodeUserSetup-x64-1.55.0.exe

配置环境变量----同上

在这里插入图片描述

然后运行go version

在这里插入图片描述

不过这种方法极不推荐,因为你不可能只有一个项目,我们每个项目都有自己的 GOPATH。习惯的做法是可以使用 go env 命令来设置

$ go env -w GOPATH=E:\VMP-Code\Golang

如果你已经在系统的环境变量中设置了 GOPATH ,那么一定移除掉,才能使用 go env -w 去设置,会报错

warning: go env -w GOPATH=… does not override conflicting OS environment variable

如果你移除了还报这个错误,那可能需要你重启电脑(反正我是这样)

在vsc菜单栏依次选择 文件–首选项–设置 ,然后 打开settings.json

在这里插入图片描述

在这里插入图片描述

编辑器vscode的go插件安装


1 . 先下载windows版的git

找到工具

  1. Visual Studio Code====》vscode

在github中找vscode-go

安装依赖工具

在这里插入图片描述

在cmd中

go get -u -v github.com/nsf/gocode

go get -u -v github.com/uudashr/gopkgs/cmd/gopkgs

go get -u -v github.com/rogpeppe/godef

go get -u -v github.com/alecthomas/gometalinter

go get -u -v github.com/haya14busa/goplay/cmd/goplay

go get -u -v github.com/tylerb/gotype-live

go get -u -v github.com/davidrjenni/reftools/cmd/fillstruct

go get -u -v github.com/sourcegraph/go-langserver

go get -u -v github.com/fatih/gomodifytags

go get -u -v github.com/ramya-rao-a/go-outline

go get -u -v github.com/acroca/go-symbols

go get -u -v golang.org/x/tools/cmd/guru

go get -u -v golang.org/x/tools/cmd/gorename

go get -u -v golang.org/x/tools/cmd/godoc

go get -u -v github.com/zmb3/gogetdoc

go get -u -v golang.org/x/tools/cmd/goimports

go get -u -v github.com/golang/lint/golint

go get -u -v github.com/sqs/goreturns

go get -u -v github.com/josharian/impl

go get -u -v sourcegraph.com/sqs/goreturns

go get -v -u github.com/peterh/liner github.com/derekparker/delve/cmd/dlv

go get -u -v github.com/cweill/gotests/…

go get -u -v honnef.co/go/tools/…

在这里插入图片描述

需要将一下的东西解压到GOPATH目录中去

在这里插入图片描述

有些包需要手动解压缩到这儿

在这里插入图片描述

手动创建目录,右键目录,选择git here(前天装了git)

在命令行执行git clone 网址

Go插件安装失败的解决方法


在%GOPATH%\src\目录下,创建golang.org文件夹;

然后在%GOPATH%\src\golang.org\目录下创建名称为x的文件夹;

打开cmd,cd进入%GOPATH%\src\golang.org\x目录;

输入git clone https://github.com/golang/tools.git tools -->回车,并等待下载完成;

完成后,%GOPATH%\src\golang.org\x目录下,会多出来一个tools的文件夹;

最后重新 go get上面第6步的go插件即可;

Code Runner


编写完代码后,想运行这个 go 文件,通常情况下你得通过下面 VSCODE 提供的入口去运行,是比较麻烦的。

在这里插入图片描述

点击 create a launch.json file 就会在项目根目录下创建一个 json 文件,创建完成后,运行的边栏就变成如下模样,再点击 那个三角运行按钮,就可以运行它了。

在这里插入图片描述

使用这种方法,需要安装一个 dlv,VS Code 会提示你安装它,安装完成后你会在 bin 目录下发现 dlv.exe

在这里插入图片描述

这种运行方法,虽然可行,但是操作路径还是有点长。

最符合用户使用习惯的应该是,直接有一个 运行 的按钮的,例如这样

在这里插入图片描述

或者通常快捷键,或者右键就有运行的选择项。

在这里插入图片描述

VS Code 本身不提供这样的功能,你需要安装一个叫 Code Runner 的扩展,安装后不需要重启 VS Code 就会失效

在这里插入图片描述

使用 Ctrl + Alt + N ,或者右键选择 Run Code 就可以执行该 go 文件。

五. 设置环境变量:GOPROXY

====================================================================================

由于国内的一些网络问题,导致我们无法直接拉取 go 的一些工具包,这时候就要借助大神们搭建的代理地址来下载了。

最经常使用的是代理地址是:https://goproxy.cn

go env -w GOPROXY=https://goproxy.cn,direct

下载 Go 工具插件


创建目录 src/goland.org/x/,并进入此目录,执行命令

$ git clone https://github.com/golang/tools.git

$ git clone https://github.com/golang/lint.git

随便点开一个 go 文件,在你的右下角会提示要你安装一些工具,安装的包有些由于墙的原因,无法下载,为了保证下载顺利,可以设置一下代理。

$ go env -w GOPROXY=https://goproxy.cn,direct

然后再点击 Install All

然后你在 OUTPUT 就能看到安装进度

在这里插入图片描述

配置环境变量


set GO111MODULE=

set GOARCH=amd64

set GOBIN=

set GOCACHE=C:\Users\wangbm\AppData\Local\go-build

set GOENV=C:\Users\wangbm\AppData\Roaming\go\env

set GOEXE=.exe

set GOFLAGS=

set GOHOSTARCH=amd64

set GOHOSTOS=windows

set GONOPROXY=

set GONOSUMDB=

set GOOS=windows

set GOPATH=E:\MING-Code\GoPlayer

set GOPRIVATE=

set GOPROXY=https://goproxy.cn,direct

set GOROOT=D:\Program Files (x86)\Go-1.13.6

set GOSUMDB=sum.golang.org

set GOTMPDIR=

set GOTOOLDIR=D:\Program Files (x86)\Go-1.13.6\pkg\tool\windows_amd64

set GCCGO=gccgo

set AR=ar

set CC=gcc

set CXX=g++

set CGO_ENABLED=1

set GOMOD=

set CGO_CFLAGS=-g -O2

set CGO_CPPFLAGS=

set CGO_CXXFLAGS=-g -O2

set CGO_FFLAGS=-g -O2

set CGO_LDFLAGS=-g -O2

set PKG_CONFIG=pkg-config

想查看几个特定的环境变量就加在 go env 后面

E:\MING-Code\GoPlayer

$ go env GOROOT

D:\Program Files (x86)\Go-1.13.6

$ go env GOPROXY

https://goproxy.cn,direct

以上环境变量很多,这里仅设置下面这两个就足够了

一个是GO111MODULE 设置为 on,表示使用 go modules 模式

$ go env -w GO111MODULE=on

一个是开启代理,防止下载包失败(前面可能你已经设置过)

$ go env -w GOPROXY=https://goproxy.cn,direct

五. 第一个程序helloworld

=====================================================================================

helloworld.go

在这里插入图片描述

package 必须在go源文件开头声明,代码所属包

import用于导入程序依赖的所有包

func用于定义函数,main函数是程序的入口,无返回值

fmt.PrintLn输出

package main

#import “fmt”

import (

“fmt”

)

func main() {

fmt.Println(“hello world!!”)

}

在cmd执行,注意在制定的问价夹下面

-x 打印编译过程

-work 保存编译过程

-o 输出结果

go build helloworld.go

go build -x -work -o hello.exe helloworld.go

go run 直接运行程序(编译+运行)

go clean 清楚编译文件

会在当前文件夹下面生成一个.exe的文件

dir

最后执行.exe文件

最后的话

最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!

资料预览

给大家整理的视频资料:

给大家整理的电子书资料:

如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以点击这里获取!

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

go

go build -x -work -o hello.exe helloworld.go

go run 直接运行程序(编译+运行)

go clean 清楚编译文件

会在当前文件夹下面生成一个.exe的文件

dir

最后执行.exe文件

最后的话

最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!

资料预览

给大家整理的视频资料:

[外链图片转存中…(img-vTZnIr5P-1715581576888)]

给大家整理的电子书资料:

[外链图片转存中…(img-CmAwwpqI-1715581576889)]

如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以点击这里获取!

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 20
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值