为Go编写的webapp设置了什么?

时间:2017-01-03 14:07:40

标签: go deployment

我想在DigitalOcean或类似的云提供商上部署我的webapp(基本上是CRUD)。我发现我可以设置GOARCH=386GOARCH=amd64。两者都在我的电脑上正确构建。

如何决定在服务器上部署哪一个?有最新的Ubuntu,Debian,CentOS等热门选项。

1 个答案:

答案 0 :(得分:2)

设置与您的Droplet架构相匹配的那个。您可以在您的液滴列表中查看此信息。请注意,定位386平台,您可以在386amd64平台上运行它,在编译为amd64时,您只能在amd64上运行它。< / p>

如果你要问哪个选择,那么它取决于你。知道某些操作在amd64上更快(特别是那些使用/涉及64位值的操作,如int64),并且Go工具的某些功能仅在您定位{{1}时才可用}架构,例如race detectorSupported Systems

  

竞赛检测器在amd64darwin/amd64freebsd/amd64linux/amd64上运行。

windows/amd64的可执行二进制大小和内存使用量稍微大一些,但在Go的情况下它并不是真正的问题,因为一个简单的,运行的Go Web服务器使用类似8 MB的内存。除非您使用过大的数组/切片,例如amd64,因为[big_number]int的大小将是int上的4个字节和386上的8个字节。