Go 到底优势是在哪里?

2019-10-17 17:24:00 +08:00
 upday7

我们现在的项目是用的 django+restful 做接口,最近接触到很多 go 的内容,被网络上的讨论有点弄晕了。如果做接口后端,为什么 go 比 python 有优势,除了速度这些还有什么?

22190 次点击
所在节点    Go 编程语言
153 条回复
TangMonk
2019-10-18 07:42:56 +08:00
@okampfer 最好的是 visual studio,非常非常好用,次之就是 vscode
crella
2019-10-18 08:30:27 +08:00
@qqxx520 就 py 那个打少一个空格就出错、网上复制代码经常乱格式的设定,我说 perl5 都不会灭绝,何况 php、ruby,别忘了微软的古怪 powershell 可以引用.net 对象
KaynW
2019-10-18 08:47:23 +08:00
@wqxuan 对啊, 管他那么多,面向工资编程就完事了
ericgui
2019-10-18 08:51:18 +08:00
@mamahaha 说得对
NaVient
2019-10-18 09:03:24 +08:00
就三个字 go 最重要的就是云原生 看到没人提
encro
2019-10-18 09:03:59 +08:00
1,一次开发,交叉编译,到处使用。( windows,linux,arm,物联网 )
2,没有魔法( Python 有多少让你惊奇,仍不住叫 WTF 的)
3,性能好(原生协程,编译速度快)
4,社区开源产品丰富( package 数目,GIT 开源项目数目上,除了 npm,pip,go 应该快赶上 composer 了)
5,背靠 GOOGLE,官方包质量高(相比 python 的 HTML 解析包你就得学 4 个)

看看 Github 上得 package star 排行,我认为 go 高质量库已经超过 Python 了。
Why?
Cellei
2019-10-18 09:10:48 +08:00
说个与贴子主题无关的:vert.x+kotlin
gramyang
2019-10-18 09:11:12 +08:00
go is god,30 分钟 5 万!(指同等逻辑下 java 的代码字数)
weer0026
2019-10-18 09:12:32 +08:00
单纯是逃不开,最近学 docker,k8s,顺手学了 golang,生态在这里的。
find456789
2019-10-18 09:13:32 +08:00
本来打算换 go,看完各位的回答,我还是坚持 python, 因为我的网站,瓶颈应该在数据库上,而不是并发上, 等哪天我有 10w 并发 在考虑换 go
XIVN1987
2019-10-18 09:22:48 +08:00
@encro

"看看 Github 上得 package star 排行,我认为 go 高质量库已经超过 Python 了。"

这个在哪里看?
chenqh
2019-10-18 09:40:36 +08:00
@find456789 我觉得有 2k 并发都可以换了 golang,但是直连数据库 2k 并发有点难呀
blless
2019-10-18 09:43:38 +08:00
@find456789 纯 python 100 并发 P99 就很难看了,再加 GIL,你就信那些吹 python 的嘛。再加 GIL 额外进程消耗,几百的时候你就要开始折腾优化。这功夫下来 go 版本瞎写都几千 qps。
jdlau
2019-10-18 09:53:40 +08:00
这种东西只有自己用过才能体会到吧。。
jydeng
2019-10-18 09:57:46 +08:00
围观一下
xmge
2019-10-18 09:59:14 +08:00
1、go 简单(但不简陋)
2、go 中协程序是轻量级的线程(占用资源少),同等性能的服务器中可以并发更多的处理单元。
kran
2019-10-18 10:01:11 +08:00
把一部分工作交给编译器, 这是很好的.
Hanggi
2019-10-18 10:03:59 +08:00
@find456789 就算瓶颈在数据库上,跟并发一点关系也没有,那也是 go 更快。
tt67wq
2019-10-18 10:10:37 +08:00
如果只是 crud 的业务,go 没啥明显优势,看看 go 的明星项目,都是容器,网络中间件相关的,
比底层操作系统上层一些的领域是 golang 主场
micean
2019-10-18 10:21:55 +08:00
go 的优势只有 docker 吧

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/610366

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX