什么语言/架构在容器、云主机这样资源紧张的平台中效率比较高?

2019-12-18 17:26:29 +08:00
 CrazyBoyFeng

假设就以 CRUD 管理系统(使用 SQLite 数据库)和爬虫两种应用来讨论,运行环境是小内存小 CPU 的云容器、低配 VPS 之类的环境。

那么这种资源紧张的条件下,用什么语言 /架构能发挥最大性能?

这个问题等同于:同样的工作效率,谁的资源占用更低?

提出这个问题的原因主要是为了省钱。。。

首先排除 Java 和 JVM 系所有方言,包括不限于 Scala、Kotlin

5644 次点击
所在节点    程序员
66 条回复
hrong
2019-12-19 07:46:31 +08:00
java microprofile
opengps
2019-12-19 08:35:36 +08:00
汇编真的牛逼
wangxiaoaer
2019-12-19 08:53:06 +08:00
不装逼拿汇编说事。

考虑到效率层面,虽然我极其讨厌 go,但是我不得不说 go 在执行效率和资源占用优势还是很大的,同时也兼顾了开发效率。
leido
2019-12-19 09:00:33 +08:00
Go C++
javapythongo
2019-12-19 09:05:56 +08:00
也要考虑人力成本
mxT52CRuqR6o5
2019-12-19 09:08:54 +08:00
你这两种应用都是 io 密集型,用哪种语言都差不多的
Guys
2019-12-19 09:56:37 +08:00
我觉得一楼说的对
Guys
2019-12-19 09:57:59 +08:00
说出来你可能不信,Java 一开始就是给资源有限的小机器设计的(狗头)。
newtype0092
2019-12-19 10:01:40 +08:00
这是个悖论。
如果你能力足够摆平设备性能的水平,那么你应该不缺这点钱。
反之,设备上剩下的钱可能不足以填平特选的技术上的坑。

总之,技简单大众的技术效率最高。
wysnylc
2019-12-19 10:14:33 +08:00
Java11 加入的 zgc,垃圾回收最大延迟 10ms,实际 1ms
支持 4TB 内存,后续版本扩展到 8TB 还是 16TB 我忘了
请问,够资格吗?
abcbuzhiming
2019-12-19 11:01:09 +08:00
@wysnylc 不够,java 目前的技术栈,起个服务占内存太高了
ArJun
2019-12-19 11:11:27 +08:00
服务器的成本 go 只需要 java 的一半甚至更低
一般企业都是 2h8g 跑 java,资源还挺紧的,用 go 微服务 2h4g 基本够了,只要宽带够大并发什么的基本没问题
tailf
2019-12-19 11:21:55 +08:00
@wysnylc 还真不够,jvm 是业界最耗内存的技术
LANB0
2019-12-19 11:49:22 +08:00
除了 java 系的都可以吧,当然 c/c++、go、rust 应该是最不成问题的,我们日常是单核 800hz,256 内存下的嵌入式设备设备 C/C++已经可以随便搞了。当然限于 flash 太小( 32M ),go 只能自己跑跑小 demo
kiddingU
2019-12-19 11:49:23 +08:00
go
janxin
2019-12-19 13:39:33 +08:00
@LANB0 gccgo/llvmgo 了解一下
sagaxu
2019-12-19 14:18:24 +08:00
@ArJun 跑个 OA 或者管理后台,2c8g 太奢侈,1c1g 够几百个人用了
sagaxu
2019-12-19 14:20:35 +08:00
@abcbuzhiming 看类型,我以前公司 2c4g 的低配 vps,每台跑 8 个 java 服务
abcbuzhiming
2019-12-19 15:19:59 +08:00
@sagaxu
你觉得 4G 跑 8 个 java 服务是很值得说道的事情吗?现在有大量的非高频请求服务,希望的是你启动起来就占个几十 M 内存最好,一台机器上最好能跑上百个服务!

上个时代互联网大撒币一样不要钱,导致很多程序员觉得硬件资源不要钱一样,4G 才跑 8 个服务,这有什么值得称道的?一个服务吃 500M 内存?
scnace
2019-12-19 15:34:56 +08:00
哇 楼里竟然有这么多人推荐 Serverless 更准确的说法应该是 FaaS 吧 但是感觉国内大厂还没有相关的大型实践?

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

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

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

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

© 2021 V2EX