Spring 用倦了,公司的容器资源寸土寸金,一个项目启动后容器占用 2G 内存,快吐了。听过 Solon 能降低 70%的内存占用,我都不敢用,有没有用过的给我个建议。
1
chendy 232 天前
10 个 2g 的微服务整合成一个 2g 的单体就万事大吉了
另外既然没人拦着你换框架,换语言应该问题也不大吧 |
2
cookii 232 天前 via Android 9
没有内存就不要用 Java
|
3
cookii 232 天前 via Android
1 用 springboot native
2 用 ibm openj9 的 jvm 能 |
4
tuimaochang 232 天前
nutz
|
5
Eillott 232 天前 via Android
国产是什么意思,开源界分外国产和国产?
|
6
hutoer 232 天前
oracle helidon
|
7
9i5NngJHI4P7dm42 232 天前
@Eillott #5 分, 国产个人开源≈垃圾
|
8
lsk569937453 232 天前 7
Spring 用倦了,公司的容器资源寸土寸金,一个项目启动后容器占用 2G 内存,快吐了。
一看就是工作一两年的新手,还想着硬件上给公司省钱啊。。。。老油条从来就是什么手熟用什么框架,至于硬件资源,那是公司的问题,不是你的问题。 |
9
yeqizhang 232 天前 via Android
不说公司的项目本身太累赘怪 springboot ?
|
10
HojiOShi 232 天前
我所在的芝麻粒大的小公司用的是 jFinal
|
11
mshadow 232 天前 via Android
公司的资源你操啥心,除非专门给你时间弄。
题外话,2G 内存 go 的微服务能跑一堆了 |
12
fkdog 232 天前 5
这 Solon 又是什么臭鱼烂虾。
|
13
hundandadi 231 天前 via Android
@lsk569937453 怕是没被降本增效搞过,三天两头优化的日子也不好过
|
14
chuck1in 231 天前
。。。。op 你确定不用 springboot 吗,各种生态和库到时候你怎么办。公司最重要的是业务系统的稳健开发和运行。。。。。
|
15
cslive 231 天前
servlet 手撸,又不是不能用
|
16
Dragonphy 231 天前
抛弃了 Spring 生态,你都不应该用 Java 了,Node.js 或者 .Net Golang 都行
|
17
maokg 231 天前
用 go
|
18
mango88 231 天前
不想用 Spring 就用 Vert.x 或者 Play
|
19
Ayanokouji 231 天前 1
咋没人推荐 https://quarkus.io 呢🐶
|
20
cnzjl 231 天前
用 golang 吧,直接解决你的内存焦虑
|
21
jlkm2010 231 天前
我们公司有几个项目用的 solon ,目前看没啥问题,轻量简洁
|
22
EastLord 231 天前
用 graalvm 试试
|
23
kran 231 天前
guice+javalin, 随心所欲
|
24
dif 231 天前 1
换 PHP 啊,这点内存都扣扣嗖嗖的,java 确实不合适。
|
25
interim 231 天前 4
推广文,新号无回复,加入于 2024-03-13 10:57:43 +08:00
|
26
tangzhiyong 231 天前
占用内存问题,关键的关键应该是 JVM 问题吧。所以正路应该是换一个不用 JVM 的语言?
|
27
trifolium0wang OP @imzhoukunqiang springboot native 试了,不行,各种 bug ,用着用着就奇奇怪怪的缺少类,不够费劲钱。
|
28
trifolium0wang OP @lsk569937453 公司也是大家一起维护的啊,我们客户项目一个容器都是 4G 配额,客户非常不满意,而且经常内存溢出。维护吧,又维护不了,因为代码太烂了。
|
29
trifolium0wang OP @maokg 公司 20 个开发,没有一个 go
|
30
Belmode 231 天前 1
只要你还想用 Java ,就别想着离开 Spring 生态圈,看看楼上前辈们的回复,你心里也有点数。
|
31
funcNVidia 231 天前
为啥哟啊用国产框架 ?
|
32
trifolium0wang OP @interim 什么玩意,我注册的账号等不上,不知道为什么,心血来潮用的另一个号发文,在你眼里什么都是推广是吧?你说说新号发什么才不算推广?发涩图?
|
33
caodd 231 天前
推荐 ktor https://start.ktor.io/#/settings ,不过不是国产的
|
34
28Sv0ngQfIE7Yloe 231 天前
>>> 公司也是大家一起维护的啊,我们客户项目一个容器都是 4G 配额,客户非常不满意,而且经常内存溢出。维护吧,又维护不了,因为代码太烂了。
是想说明,在代码栏的情况下 Java 更耗费资源吗... 另外既然 K8S 了,那就挂 HPA 呗 |
35
wanminny 231 天前
go web/go 微服务 框架多的是。。。
|
36
cookii 231 天前 via Android
@trifolium0wang 换 epenj9 的运行环境。省不少内存。
|
37
walkerliu 231 天前
有内存焦虑的话就换 Go / Rust 吧
|
38
programApe 231 天前
我们做项目给甲方报配置内存一般 128g 起步,实际上 16g 都绰绰有余。自己公司常用用的还是 8g 、16g 的😂。代码太烂,内存溢出都是无脑让甲方加硬件配置。
|
40
QWE321ASD 231 天前
你直接上 guice,然后自己手写各种组件
|
41
z4zr 231 天前
|
42
icanbeyrhero 231 天前
为什么盯着国产,Jersey 了解一下,JAX-RS 规范实现😏
|
43
iminto 231 天前
SpringBoot 没问题,是你们代码太烂,正常启动 512M 内存就够了。
换个框架很可能因为垃圾代码导致内存占用更离谱 |
44
cheng6563 231 天前
用 IBM OpenJ9 的 JVM ,也是开源免费的,虽然版本号还在 0.43 离 1.0 遥遥无期,但实际使用和 Hotspot 没啥差异了。
|
45
Jasckcc 231 天前
换 golang
|
46
zhady009 231 天前 via iPhone
SpringBoot 应用跑起来 100M 都不用
|
47
qviqvi 231 天前
2G 是比较大的项目吧。可以预估一下峰值,压测一下,限制堆内存大小,看看最小多少内存满足
|
48
JimmyChan1506 231 天前
是真的占用了 2G 内存, 还是你给它分配了 2G 内存?
另外有换框架的成本没有钱加内存? 不太明白这思路 |
49
yannxia 231 天前
话说···Solon 为啥能和 SpringBoot 对齐来着
|
50
dorothyREN 231 天前
@odifjg9384hg 你那两条线话歪了,麻烦改成直的
|
51
siweipancc 231 天前 via iPhone
io 全部走本地调用,200m 洒洒水啦,用国产是什么思路,真不怕跑路?真要求有 springboot 的开箱跟性能,直接上.net ,语言特性又特别相似。
|
52
lstz 231 天前
让领导想想,一个月 1000 元的服务器都不舍得投入,对得起这么多 10k 的程序员码农吗
|
53
pptom 231 天前
我这边一堆 1G 的跑的好好,业务量也不少,不是 spring boot 不行,主要还是代码写得太烂吧。
|
54
wuyiccc 230 天前
solon 企业版要付费,你是要买企业版么?
|
55
seedhk 230 天前
spring 是你给他越多,他吃的越多。可以远程连接上去,或者借助一些三方工具看下具体的内存占用。
一般项目可能 256-512 就够用了 |
56
wssy001 230 天前
你确定你能无缝切到 Solon 你的领导、同事能同意你这么干?我感觉 SpringBoot + GraalVM Native Image 都比切到 Solon 要好
|