• 生活小妙招免费各类生活中的小问题知识以及音乐简谱等,是你了解世界未知知识的好地方。

为什么越来越多的公司使用Go代替Java作为后端主要开发语言?

十万个为什么 空空 2024-4-28 04:25:27 4次浏览

关于问题为什么越来越多的公司使用 Go 代替 Java 作为后端主要开发语言?一共有 5 位热心网友为你解答:

【1】来自网友【偶尔来逛逛随便来瞧瞧】的最佳回答:

作为 api 开发来说,go 优势非常明显。首先从开发来说,go 的开发效率比 java 高了好多,无论配置文件。还是语法方面,go 可以说是不多的可以边学边出项目的语言,几乎无曲线。在部署上,不需要前置条件的可执行文件,和容器完美结合,内存占用率小。同样的模块,springboot 打包 70 多的模块用 go 重写后只有 20+,部署到 k8s 上,java 版多核占用率 147,go 版占用率 49。单实例双副本可轻松支撑日 5000 万次以上接口调用

【2】来自网友【慕韩 009】的最佳回答:

上手越容易的语言,往往意味着越没有前途。

【3】来自网友【星落 1985】的最佳回答:

最主要是 go sdk 小,更适合做分布式 docker 容器。java 服务容器几百兆,go 容器几兆几十兆。

【4】来自网友【聪明的鲸鱼 Gs】的最佳回答:

做开发也十几年了,很多很多年前就有人在推崇 go 了,说 go 能开多少协程,高并发有多厉害,当时也觉得牛,Java 这么多年就没有,经过好多年了,对集群高并发有了更深的理解,发现大家说的能开成千上万的协程其实没啥用,Java 早十年就有这个概念了,我就很奇怪为啥 Java 不实现呢,百度了下说阿里很早就用纯代码实现了协程,但效果不好,真实性就不待考证了,我们就自己思考下,反问下有多少程序需要开成千上万上百万的协程的,开这么多协程你又能用上多少 cpu,时间片都是有限的,大部分协程其实都是在等待中度过,上万的协程切换花的时间并不比你用几个线程花的时间少?

上大学的时候,专业主修语言还分 c#和 java,过了这么多年 c#基本只外包还在用了,岗位也少得可怜,开发语言少说也有几十种了,大浪淘沙,多少技术浮沉,如果 go 一直拿协程说事,走不长的,还是得生态,生态,生态,头条肯定有服务治理的一套解决方案,但需要人花时间写个通用框架并开源出来,生态的完善需要这些头部大厂的努力,头条我也查过为啥选 go,当时记得一句话如果你系统本身是 Java 没有必要选 go,Java 一直有强大的开源组织贡献源源不断的力量,所以 Java 一直在发展,go 要追上这种老牌语言还有很长的路要走。

也待过几个公司,也有公司涉及语言转型,问为什么不选 java ,Java 太庞大了,最后选了 php,java 的确是比较庞大,一个 jsp 就当 php 了,java 的入门是要高点,如果你是科班出生,大学多半也学过了,选 java 是没有错的,新团队就看你们 cto 的判断了,鉴于互联网时间并不长,很多小公司 cto 可能还没 30 岁,选什么语言都不奇怪,每个语言都能支撑你们做世界级的大公司,只是花的时间多少而已,弱势语言需要更多的大牛和人才培养的问题,毕竟不是老牌语言一抓一大把。

说那么多个人并不看好 go,编程语言很多了,在谷歌可能也许只是个 kpi 的产物,把未来寄托在这么一个可能在谷歌内部都不算核心业务的语言上面总觉得不太明智。

【5】来自网友【吨吨吨吨 norig】的最佳回答:

go 在 web 项目开发上并不比 java 优势很多,go 在写中间件服务上占优势。那些说 go 比 java 适合写 web 后台大部分都是听说

喜欢 (0)