确定 Go 项目的大小
您可能出于各种原因(例如优化磁盘)想要验证 Go 项目的大小空间或估计网络传输时间。本文将指导您如何有效地检查 Go 项目的大小。
检查二进制大小
对于可执行项目,您可以通过以下方式确定其大小使用以下步骤:
例如:
$ go build $ ls -l my_program -rwxr-xr-x 1 user user 65536 Apr 1 09:06 my_program
在本例中,二进制文件“my_program”为 65,536 字节大小。
检查图书馆大小
对于要导入到项目中的包(库),您可以通过检查 $GOPATH/pkg 目录来检查其大小。库二进制文件的大小可以在相应的子目录中找到。
例如,要检查 gorilla http 包的大小,请运行以下命令:
$ go get -u github.com/gorilla/mux $ go get -u github.com/gorilla/securecookie $ go get -u github.com/gorilla/sessions $ cd $GOPATH/pkg/darwin_amd64/github.com/gorilla/ $ du -k *
这将输出已安装的 gorilla http 包的二进制大小。
注意事项去重
需要注意的是,Go 的链接器会自动去重跨包的共享依赖项。这意味着,即使您导入具有相同依赖项的多个包,这些依赖项也只会包含在最终可执行文件中一次。
因此,Go 可执行文件的总大小不会是单独的库大小。您可以使用分析工具(例如 go tool pprof)更详细地分析可执行文件的大小,并识别占用空间最多的特定包和函数。
以上是如何确定 Go 项目的大小?的详细内容。更多信息请关注PHP中文网其他相关文章!