有什么像 golang 一样低内存占用, 但是语法更偏向 Java /c++/js 的语言吗?

2021-07-30 12:32:39 +08:00
 zoharSoul
10669 次点击
所在节点    程序员
77 条回复
someonedeng
2021-07-30 23:11:33 +08:00
西沙普
agagega
2021-07-30 23:29:47 +08:00
当然是 C# Swift Kotlin 三兄弟啦,风格还有点像。一开始还都是各自平台专用,后来都开始跨平台。
iseki
2021-07-31 00:09:42 +08:00
正常场合下大家内存占用应该都差不多( Java 别用 spring 就还行,用 Kotlin 搭配 vertx/ktor 等等。native image 可以参考下,个人没在生产使用过,不知道咋样
chendy
2021-07-31 00:19:07 +08:00
java 不用 spring 用啥啊
不用 spring 的话,不如直接不用 java 了,一样不好招人
iseki
2021-07-31 00:24:33 +08:00
啊,是为了好招人啊,那当我没说
lightjiao
2021-07-31 00:45:35 +08:00
C#除了不出名,其他哪儿都好,生态其实也还不错,写起来超级舒服
40EaE5uJO3Xt1VVa
2021-07-31 00:58:40 +08:00
.net core,相见恨晚 ,如果去年见到,我就舍弃 go 上巨硬的邮轮了
WebKit
2021-07-31 03:34:09 +08:00
可以试试 kotlin 啊。真的很好用
cassyfar
2021-07-31 05:07:29 +08:00
别推荐了 rust,都没公司用。

go 挺好的,出活效率大概是 java 和
cpp 的 1.5 倍
zxCoder
2021-07-31 07:59:47 +08:00
必须是 c#
WebKit
2021-07-31 09:05:22 +08:00
@cassyfar 感觉还是 java 更快啊。各种轮子很丰富
abcbuzhiming
2021-07-31 10:54:42 +08:00
@thet
@wellsc
有一说一,C#和 net core 比起 Java 这种有历史包袱的语言内存占用是少了很多,但是比起 Go 这种直接编译出本地 AOT,压根就没有虚拟机拖累的语言,那就不够看了。net core 据说也在折腾编译成目标平台代码,不带虚拟机,就看啥时候能弄成了
ipwx
2021-07-31 11:54:01 +08:00
@abcbuzhiming yysy JIT 理论上可以比 AOT 运行速度更快,而且实际上也经常这样。

对于内存而言,可能云上虚拟机 / 嵌入式会比较头疼 JVM/CLR 。但是对于大型服务器集群,这不太是事情。
ipwx
2021-07-31 11:55:15 +08:00
@abcbuzhiming JIT 更快的原因是因为可以根据入口参数改造代码。比如 if (xxx) ... else ... 在这里如果根据入口参数进行条件判断的,cpu 流水线可能会被打断。流水线打断就是 20 条指令的时间开销(可能更多)。JIT 完全有机会根据不同参数分别产生两个不同函数去用。
abcbuzhiming
2021-07-31 13:18:56 +08:00
@ipwx 我认同 Jit 可能更快,但是我不认同你关于内存的说法,资源总是不够用的,特别是当你进程数量起来以后,一个进程能减掉一半的内存,就是一大笔成本,Java 这个语言确实在云原生时代遇到了挑战,就是其虚拟机太过庞大,否则 oracle 就不会去折腾 graavlm
ipixeloldc
2021-07-31 13:18:58 +08:00
@cassyfar 确实,rust 现在国内除了字节的飞书大规模用。其他就一堆区块链的用。。。
wellsc
2021-07-31 13:51:43 +08:00
@abcbuzhiming 因为点 net 能编译二进制了我才提的
hushao
2021-07-31 14:10:37 +08:00
kotlin 国内有大公司用在服务端了,只不过生态是真的很原始,要自己造不少、团队有大神可以关注一下,团队没人就想其他的吧。其他语言如 rust 也是,没大神坐镇也基本折腾不起来
ipwx
2021-07-31 14:10:55 +08:00
@abcbuzhiming 不啊,Java 多线程足够强,大部分后端 Java 是多线程 + 异步的吧。
EscYezi
2021-07-31 15:42:23 +08:00
试试 qurakus 打包 native image

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

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

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

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

© 2021 V2EX