开个脑洞:不考虑生态, Docker+Go 有潜力取代 JVM+ Java 么?

2019-05-18 11:40:22 +08:00
 shijingshijing

请注意:不考虑生态是前提,也就是各种 framework,各种轮子都不算在内,单纯看语言和运行环境。

我觉得 JVM 毕竟隔了一个虚拟机,效率啥的比 Docker 还是差一截吧。而且 Go 毕竟这几年才发展起来,论历史沉淀确实比不上 Java,但考虑到 PHP 也是跟 C 一脉相承,按当初 C 转 PHP 的势头,如果都转 Go,前景可期。我站 Docker+Go,虽然个人不喜欢 Go 的语法。

利益相关:目前正在写 Java,没有写过任何 Go 项目。

7596 次点击
所在节点    程序员
75 条回复
coffeSlider
2019-05-18 11:47:37 +08:00
你说的这有可比性嘛? docker 是啥先理解清楚吧。
Trumeet
2019-05-18 11:53:06 +08:00
建议楼主先搞清楚 Docker 是什么(
linhua
2019-05-18 11:53:33 +08:00
JVM 的虚拟机 和 Docker 之类的虚拟机 不是一个概念
Go 不需要 Docker 呀
gamma
2019-05-18 11:53:34 +08:00
为啥要把 Docker 和 Go 绑定呢? Go 的项目可用 Docker 也可不用,反过来 Java、PHP、Python 也可以用 Docker 呀……
而且讨论趋势和潜力却不考虑生态这个影响最大(之一)的要素,就好像讨论投资不考虑收益一样奇怪
LXchienne
2019-05-18 11:54:14 +08:00
你的帖子让我对 docker 的理解产生了疑问
JasperWong
2019-05-18 11:58:33 +08:00
jvm 和 docker 不是一个维度的东西
wangfeng96
2019-05-18 12:00:55 +08:00
Java 怎么可能说被取代就被取代呢
lonelygo
2019-05-18 12:02:11 +08:00
难道是这么理解的:
JVM ( JRE ) === Docker
Java === Go

容我重新 Google 学习下 Docker 的概念去。
JerryCha
2019-05-18 12:03:43 +08:00
你的假设我不认为能成立。做决策是需要考虑成本和风险的。时间、成本、质量,Go 能做到显著提升这三者中的任意一个因素才有胜出的可能。
loading
2019-05-18 12:06:17 +08:00
go 可以单文件搞定,并不需要 docker。
cookey39
2019-05-18 12:06:25 +08:00
Java 日常被取代
arfa
2019-05-18 12:07:09 +08:00
如果 Oracle 再这样作死,那就真有可能会转向 go
mritd
2019-05-18 12:07:40 +08:00
额... 那请问不考虑框架的情况下,v2ex 能否取代高铁?
mritd
2019-05-18 12:09:34 +08:00
我曾经花费很久去跟新人谈 docker 不是虚拟机的问题... 但是你这个问题真的让我无从下手 贫僧甘拜下风
mritd
2019-05-18 12:13:31 +08:00
@LXchienne #5 马上你就会对 k8s 产生疑问 哈哈哈
mrdemonson
2019-05-18 12:15:32 +08:00
一脸懵逼进来,一脸懵逼出去,以为我对 docker 的理解错了+1
lonelygo
2019-05-18 12:16:11 +08:00
@mritd 隔壁整好在谈 docker 🤓
lonelygo
2019-05-18 12:17:52 +08:00
@mritd 如果 jvm === docker,请回答:??? === k8s
geekvcn
2019-05-18 12:19:56 +08:00
Docker 更接近虚拟化技术,和 Openvz 差不多,只不过 Openvz 虚拟操作系统,Docker 是用来简化部署的,可以直接打包各种依赖,同样的 jvm+web 容器+web 项目也能打包方便部署。go 语言又不是一定要跑在 Docker 里,直接跑 window,linux 都行,这样效率更高,现在哪有项目是追求那么点效率的,不如加配置来的直接,除非是性能严重影响业务,才会考虑优化性能,性能那么重要,移动端就不会 webview 遍地走,native 应用少的可怜了,各大公司包括 BAT 都在想办法简化开发简化部署,Docker 就是为了简化部署
cookey39
2019-05-18 12:21:01 +08:00
java 写后台是很稳的,但是高并发的情况下,不如 c++,然而普通人写 c++容易出错,所以就有了 go,go 的语法比较简洁,但这并不意味着开发高并发的 web 程序是简单的。就像是 c 语言简单,但并不意味着你学会 c 就能开发 linux 内核。
而且国内除了大的公司的核心业务,是否高并发其实无关紧要....

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

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

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

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

© 2021 V2EX