看到有人用go语言开发api服务,分发打包的程序只需要分发一个可执行文件就可以了,真的好方便,于是我也来试一试。

依赖管理

go语言的第三方包依赖管理一直比较混乱,官方并没有给出推荐的依赖管理工具。有人推荐使用godep或govendor,docker开源项目使用的又好像是trash。参考这里,经过一番对比,我最终选择了glide,原因很简单,它跟npm之类很像,对于我来说很容易上手。

#我习惯将一些工具命令装到一个独立的地方
set GOPATH=W:go_tools
go get -v github.com/Masterminds/glide
#记得要将W:go_toolsbin路径加入到系统的PATH变量里去

应用框架

beegobee
  • 安装bee

set GOPATH=W:go_tools

go get -v github.com/beego/bee

  • 创建工程
#我的GOPATH是W:workspacego_projs
cd W:workspacego_projssrc
bee api apitest
  • 安装第三方依赖
cd W:workspacego_projssrcapitest
glide init
glide install
  • 运行
cd W:workspacego_projssrcapitest
bee run
http://127.0.0.1:8080/v1/user/
  • 打包
cd W:workspacego_projssrcapitest
go build -o apitest.exe main.go
apitest.exe

总结

相对于java那一套,使用golang开发api服务分发程序真的很方便,就一个可执行文件就OK了,以后做点小项目可以用golang来整了。

参考

https://github.com/golang/go/wiki/PackageManagementToolshttps://github.com/Masterminds/glidehttps://beego.me/docs/install/bee.md