一个 Spring Boot 程序,占用内存 11G ,包大小 1G ,哭晕啊
大家都是怎么瘦身的啊
1
misaka19000 2023-02-25 15:53:24 +08:00 via Android
什么程序占这么多内存?
|
2
kisick 2023-02-25 15:54:31 +08:00
jar 包大小 1G?
|
3
Ufo666 2023-02-25 15:55:21 +08:00
好好奇
|
4
k9982874 2023-02-25 15:57:38 +08:00 via Android 5
你是把片儿塞里面了吗?
|
5
javahuang 2023-02-25 16:08:56 +08:00 2
你是塞啥了...我的问卷系统,前端+后端+数据库塞到一个 SpringBoot 的 fat jar 里面,也才 50M 而已 😂 https://gitee.com/surveyking/surveyking
|
6
herozzm 2023-02-25 16:11:04 +08:00
没有啊,就几十 M
|
7
KevinBlandy 2023-02-25 16:18:26 +08:00
我们一个工程打包 200Mb 已经觉得够离谱了。1G 是咋来的?你是装了大象么。。。
|
8
proxychains 2023-02-25 16:22:07 +08:00 4
是不是把 node_modules 也放进去了
|
9
GTim OP 回楼上的,我也不知道啊,我还没看源码
|
10
Hanggi 2023-02-25 16:49:57 +08:00
Java 整体占用资源会大一些,不管是文件大小还是内存
|
12
echo1937 2023-02-25 17:05:25 +08:00
能贴一下 pom 文件吗,2023 年了 1G 大小的包也是不多见。
|
13
kwh 2023-02-25 17:16:53 +08:00
用 SpringBoot 写了一个操作系统?
|
14
lower 2023-02-25 17:26:56 +08:00
是不是把上传的图片、附件等文件都存在资源目录了?
开发测试的时候传了一大堆被打包进去了? |
15
zhaokun 2023-02-25 17:32:22 +08:00 via iPhone
不是 springboot 的锅,去找造锅的去吧
|
16
yidinghe 2023-02-25 17:46:49 +08:00 via Android
有时候是设计架构的问题,加入了太多不必要的和重复的依赖关系,比如工具库就使用了 commons ,guava 和 hutool 三种,因为太多人经手开发,每个人又有不同的喜好。
|
17
howfree 2023-02-25 17:59:24 +08:00
不可能,绝对不可能
|
18
allenzhangSB 2023-02-25 18:08:25 +08:00
@yidinghe 加了再多依赖也不可能这么大, 这铁定自己的问题
|
19
blankmiss 2023-02-25 18:11:26 +08:00
和 4 楼一样 你是不是塞片在里面了
|
20
besscroft 2023-02-25 18:13:34 +08:00 3
快看看源码里面有没有张小聋( doge
|
21
wangxiaoaer 2023-02-25 18:15:31 +08:00
各位听我说一句,还有一种可能:这个应用可能是支持多个甲方复用的,个别定制内容比如 logo 这种不敏感的就懒得安装后手动配置,索性作为资源一起打包,启动的时候按照不同的 profile 启动。俺们之前干过,一个包 900 多 M 好像,但是运行不会占用那么高。
|
22
dqzcwxb 2023-02-25 18:25:43 +08:00 1
"占用内存 11G" 我猜你服务器是 32G 的
|
23
wellerman 2023-02-25 18:41:10 +08:00
SSD 杀手,分包打,把依赖全部打成独立子包。
|
24
yazinnnn 2023-02-25 18:54:43 +08:00
里面赛了一个实况足球吗?
|
25
cslive 2023-02-25 18:55:42 +08:00
不是不相信你,就是想开开眼界,pom 是啥样的
|
26
Richardhtw 2023-02-25 19:02:37 +08:00
目测和 SpringBoot 没啥关系
|
27
v2e0xAdmin2 2023-02-25 19:06:01 +08:00
和 springboot 没关系,springboot 可以几十兆,也可以几十 g 。
|
28
Nazz 2023-02-25 19:07:20 +08:00
转 go 吧
|
29
Nazz 2023-02-25 19:08:22 +08:00
就算是 Java, 11G 也太离谱了, 这是造了一个 redis 吗
|
30
feitxue 2023-02-25 19:55:06 +08:00
还没看源码 就来发帖了。。。是来消遣大家的?
|
31
anonymous2351d00 2023-02-25 20:09:36 +08:00
@javahuang 偶遇卷王
|
33
iseki 2023-02-25 20:15:56 +08:00
坐等后续,干什么能把 jar 包弄得这么大啊···
不过想想我们的实现,如果把所有外部依赖放进 jar 包,运行时释放,可能也超过 1 个 G 了 |
34
nkidgm 2023-02-25 20:21:15 +08:00
估计是把静态资源打包进去了,包括图片,离线数据库之类的 asset 。
|
35
silentsky 2023-02-25 20:42:37 +08:00 via Android
代码有问题吧 内存 11g 是少见
|
36
hhjswf 2023-02-25 20:49:52 +08:00 via Android 2
之前看某公众号说个梗,打完包传到内网,传了半天,仔细一看好几个 g ,解开一看里头有毛片。原来是每次半夜上线无聊就看片,有个人才传到 svn 上
|
37
thetbw 2023-02-25 20:58:09 +08:00
jenkins 启动就占用 1g 多内存我就觉得够离谱得了,关键我后台还没跑任何构建
|
38
Nnq 2023-02-26 05:07:12 +08:00
包的话 瘦身一下 base image 吧 内存的话 可以监控一下是预留内存 还是实际消耗内存大小
|
39
superares 2023-02-26 07:30:18 +08:00 via Android
直接把 jar 包解压看下里面是啥不就知道了
|
40
abcbuzhiming 2023-02-26 11:51:06 +08:00
@thetbw 有一说一 jenkins 启动确实要占这么大的内存
|
41
lance26 2023-02-26 15:04:44 +08:00
默认 jvm 占物理内存 1/4 ?
|
42
loszhang 2023-02-27 13:48:41 +08:00
我怀疑你是黑子,但是我没有理由。就好像你说 springboot 占用内存 11G ,jar 包 1G ,但又不说到底是什么占用的。
|
43
xiaocaiji111 2023-03-01 10:26:13 +08:00
1G ,老夫 7 年的代码白写了,开了眼界了今天
|
45
coderstory 2023-03-08 10:00:07 +08:00
jprofiles 分析下内存
|