golang
basic
- https://golang-china.github.io/gopl-zh/;
- https://chai2010.cn/advanced-go-programming-book/index.html;
- https://draveness.me/golang/;
- https://gfw.go101.org/;
- https://www.topgoer.com/;
- https://github.com/senghoo/golang-design-pattern;
- https://github.com/astaxie/build-web-application-with-golang
- https://www.cnblogs.com/yinzhengjie/p/7771645.html;
- https://github.com/unknwon/go-study-index;
- awesome: github;
resource
- go容器应用: docker, k8s, https://www.kubernetes.org.cn/k8shttps://zhuanlan.zhihu.com/p/97605697 ,本质上,可以把k8s看到一个微服务的框架 https://stackoverflow.com/questions/39172131/what-happens-when-the-kubernetes-master-fails The best practice is to assign multiple managers(master) to your cluster.
- https://github.com/astaxie/build-web-application-with-golang
- golang异步编程:框架层面已经把异步编程做好了,不需要自己去写异步编程,只需要使用框架提供的异步编程接口即可。https://www.zhihu.com/question/568806058/answer/2775283522
- go content api:
https://draveness.me/golang/docs/part3-runtime/ch06-concurrency/golang-context/;
https://segmentfault.com/a/1190000040917752; - golang orm:
https://github.com/go-gorm/gorm;
https://gorm.io/docs/;
command
install: https://go.dev/doc/install;
uninstall:
https://go.dev/doc/manage-install#uninstalling;
https://gist.github.com/nikhita/432436d570b89cab172dcf2894465753;go config
sh
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct // (https://blog.51cto.com/u_15127574/2761963);- go test
sh
go test -v main1.go main1._test.go- go run
sh
go run *.go //这个一定可以- go mod
sh
go mod init packageName //init package
go mod tidy //go get package- go build
sh
cd ./project1
go build
//得到产物 project1
./project1 //即可直接运行- get go env config file address: https://stackoverflow.com/questions/40825613/where-are-the-golang-environment-variables-stored
sh
go env GOENV // find go env config file address
go env // show go env config- basic command:
sh
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct
go test -v main1.go main1._test.go
go run *.go //这个一定可以, 这个太重要的,不要用code runner里的那个run,一定要用这个;
go mod init packageName //init package
go mod tidy // install all pkg
go get package // install one pkg
go mod tidy -v // remove unused pkg
go fmt *.go // format code
go build
//得到产物 project1
./project1 //即可直接运行tip
- golang monorepo的实践:
replace monorepo => ../lib-path, 然后就可以用:go get monorepo了;