go 的内存优势在部分场景比想象中多

84 天前
 momowei

不是吵架帖子,但经常看 go 和 java 比较的时候,经常有人说,go 节省点的内存跟程序员相比根本不值得一提,我越想越觉得不对劲,对于最常规的 crud 来说,不得不说 java 确实比 go 还是要一些的,不过事实是 java 或者 php 程序员转 go 其实狠快根本没那么难,而且现在环境下程序员不一定就很贵了。

go 和 java 我自己都在写,一般来说对于不差钱的国企和政府以及企业市场,java 确实是最适合的,但是我也自己做一些小产品和项目给一些小公司,我能感觉到 java 和 go 对你拿单的成本影响是很大的,比如我有一个订票(城际定制商务车业务)小程序,有时候是我自己提供云服务器,我不得不说物理机的内存确实狠便宜,可是云服务器的内存真的很贵,新用户还不明显,老用户续费狠明显,在一台 2 核 4g 的云服务器上,我一般自建数据库和 redis,然后再配合 go 的应用,因为可能面对好几个客户,会有一些自定义需求,所以部署个五六个是狠轻松的,因为每个应用的访问量并不大,但如果是 java 是很难这样子搞得,这样给了自己很大得利润空间以及拿单成本。

说了这么多,我只能说 go 其实更适合个人开发者和成本敏感型得小团队,因为一般这样团队,都自己写程序,最大得成本就是云服务得开支了,最后再说一句云服务器得内存,cpu,宽带真得很贵,动不动类似 spring 全家桶那样得架构真得狠费机器。

14502 次点击
所在节点    Go 编程语言
148 条回复
GeekGao
83 天前
成本敏感, 那选 PHP 更好,初始化占用内存少、外包人数还多、修改迭代速度快
zpxshl
83 天前
@helone 难道不是为了晋升吗
helone
83 天前
@zpxshl 为了晋升弄这个不正说明领导看重成本控制吗?为啥不写个报告说我们的服务器多有少台机器呢?目前世界第一,还在稳定增加?
xsen
83 天前
@Ipsum #43 也不算不差钱。我们这有一套系统用 go 写的,代码量说少也不少,十几万行。前阵子要支持 arm ,迁移过去也就花了两三天。若是 java 或者 c++的话,怕搭建环境与编译都搞不完
abcbuzhiming
83 天前
对个人来说,Go 非常好,资源占用少,能省下不少服务器费用。
对企业来说,Go 省下的服务器费用不注意抵消 Go 开发人员工资远比 Java 开发人员高,还难找的尴尬。

所以用哪种语言只取决于你自己的身份
guiyumin
83 天前
@momowei php ?
iyaozhen
83 天前
@happy32199 搞信创其实 Go 更合适,源码保密(说的是部署保密) 交叉编译,比 java 好多了
RandomJoke
83 天前
怎么说呢,你小项目没什么量,用什么语言其实都无所谓,你用 lua js 都行,spring 本身就用来搞大型企业项目比较流行的。生态好,市场人才也多,不过话说回来这几年 go 的生态慢慢好起来了
wupher
83 天前
- 其实 Java 自己也知道在云服务器上的劣势,GraalVM 也是 Oracle 的方案之一

- Java 的优势还是在于第三方尤其是开源支持众多,无论接什么,都能用 Spring 糊上去。Spring 全家桶确实方便统一了开发链。当然,代价也是,这玩意儿可真胖啊。此外,JDK 上还有各种派生语言,如 Kotlin 、Groovy 、Jython

- Go 的优势正好反过来。啥都能接,语法糖还不太多,框架都要自己去组合,还没有像 Spring 那样一统江山的玩意。就像当年一样,还要程序员 Struts + Hibernate 各种搭。

- 长远更看好 Golang 的发展,但自己也很喜欢写 Kotlin
back0893
83 天前
@GooMS php 还是要内存 最少 nginx+cgi 得跑
brookegas
83 天前
对内存省着用的,多是小老板/潜在的小老板,因为心疼花他自己的钱买内存
大大咧咧地说内存不值钱的,多是牛马,因为内存是老板花钱买的,自己负责写 bug 把内存耗完就好了
xeneizes
83 天前
@kk2syc 难道没有遇到 phpcms 被挂马爆破的情况吗
beneo
83 天前
@Mystery0 go 做数据转换 有什么建议?使用了什么框架?
Mystery0
83 天前
@beneo 我这里的数据转换很简单,就是接收请求,然后调用新版本的服务,获取到返回数据之后再按照老版本的格式返回,请求量大是因为微信小程序端不升级了,一直在请求老接口
jeesk
83 天前
java 还有一个优势, 资料多.
不信你试一试找个 go 反射的问题问一问 openai , 看看是否能够回答正确, 别来喷子说不用反射.
IvanLi127
83 天前
我自部署了很多服务,主要就自己用,基本上不考虑 java ,就是因为很多 java 程序太吃内存了。
codersdp1
83 天前
k8s + go 不知道多香了。
jeesk
83 天前
等以后 go 资料完善了, java 可能越来越难顶了.
kk2syc
83 天前
@xeneizes 当然有了,这不就体现了我的存在是非常重要的。(0v0)
zhjunjun
83 天前
@jeesk go 里面谁写反射。。。

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

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

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

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

© 2021 V2EX