香雨站

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
楼主: 璀璨鑫空

Java为什么比Go消耗更多内存?

[复制链接]

0

主题

3

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2023-4-21 09:58:47 | 显示全部楼层
五年Java开发,目前在学习了解go。这篇文章给了我一些新视角
回复

使用道具 举报

3

主题

7

帖子

14

积分

新手上路

Rank: 1

积分
14
发表于 2023-4-21 09:59:35 | 显示全部楼层
听君一席话,如听一席话
回复

使用道具 举报

1

主题

4

帖子

7

积分

新手上路

Rank: 1

积分
7
发表于 2023-4-21 10:00:28 | 显示全部楼层
在垃圾回收领域,java在某种程度上还是回收垃圾的
回复

使用道具 举报

3

主题

5

帖子

10

积分

新手上路

Rank: 1

积分
10
发表于 2023-4-21 10:01:05 | 显示全部楼层
见笑了[大笑],已修正
回复

使用道具 举报

3

主题

5

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2023-4-21 10:01:16 | 显示全部楼层
回复

使用道具 举报

0

主题

1

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2023-4-21 10:01:26 | 显示全部楼层
我有大量工作上都是在java上进行的,我从骨子里希望Java越来越好。我无意贬低Java,但客观原理需要明悉
回复

使用道具 举报

1

主题

3

帖子

4

积分

新手上路

Rank: 1

积分
4
发表于 2023-4-21 10:02:24 | 显示全部楼层
还有全篇总结部分,有两个重复的编号(5)。感谢你的分享。
回复

使用道具 举报

1

主题

4

帖子

6

积分

新手上路

Rank: 1

积分
6
发表于 2023-4-21 10:02:36 | 显示全部楼层
结果有点离谱了。带上Xmx限制到go两倍内存,java的性能应该都不会有波动
回复

使用道具 举报

1

主题

4

帖子

3

积分

新手上路

Rank: 1

积分
3
发表于 2023-4-21 10:02:43 | 显示全部楼层
线程占1M内存是最被误解的谣言, 1M内存占的只是虚拟内存, 物理内存并不是占1M, 而是以4K为单位使用时才分配的. 线程的弊端不在于内存, 而是切换效率没有goroutine高.
回复

使用道具 举报

3

主题

8

帖子

14

积分

新手上路

Rank: 1

积分
14
发表于 2023-4-21 10:03:34 | 显示全部楼层
JVM的各种GC其实都比Go更消耗内存, 因为支持更多的特性和更灵活多样的GC策略, 比如分代,对象可移动,各种参数调节等等. 而Go只做了一种GC方案,不分代,不可移动,没什么参数能调节,而且更注重暂停时间的优化,执行GC的时机更频繁, 所以Go通常更占更少的内存,但代价就是GC性能比JVM差了不少.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|香雨站

GMT+8, 2025-7-4 07:55 , Processed in 0.096053 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.. 技术支持 by 巅峰设计

快速回复 返回顶部 返回列表