![]() |
1
mingl0280 124 天前 via Android
加内存
|
2
urnoob 124 天前 via Android
十有八九是 node 那边漏了,加多大都没有 。
|
![]() |
6
makelove 123 天前
我的 node 配置
LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libjemalloc.so /usr/bin/node --max_old_space_size=512 -max_semi_space_size=4 main.js |
![]() |
7
makelove 123 天前
另外我的 node 程序发现内存会慢慢涨上去,可能一个月后就超过新启动时不少,不知道是 node 本身问题还是我用的第三方库问题,我的办法是在程序里定时监控 process.memoryUsage(),如果一直超过 10 次就自杀,利用 systemd 本身的机制立刻自启。
|
8
kaneg 123 天前 via iPhone
1G 的机器跑这么多应用,内存满了很正常。如果不想增加物理内存,又对程序速度不敏感,那就增加 swap ,增加几倍,是成本最低的一种方法。
|
![]() |
9
slove OP @makelove 我的问题和你差不多,刚刚准备增加 swap 分区,用 swapoff -a 关闭,机器登陆不了,只能重启了,等运行一段时间,再查看是哪个程序占用在增加
|
![]() |
11
infun 123 天前
crontab -e # 注意选 VIM
0 4 * * * /usr/sbin/reboot 我自己的机器都这样搞 |
![]() |
13
slove OP |
![]() |
14
webshe11 123 天前
再搞个 zram 作为 swap
|
![]() |
15
northbrunv 123 天前
最简单的办法,加内存。swap 是用硬盘当内存,性能很差的。
|
![]() |
16
northbrunv 123 天前
内存是内存。硬盘是硬盘。swap 只是内存价格昂贵时代遗留下的产物。
现在内存价格便宜的爆炸,80 块就能买到 8g 的 ddr4 内存。 同时 vps 厂商的大内存机器价格也很便宜了。 |
![]() |
17
blankmiss 123 天前
这种问题还要问什么 不管是 swap 还是 zram 难道你虚拟内存 比直接内存好用吗 直接升配置不比这些操作来的简单,来的性能好,当然如果是因为穷 那当我没说
|
18
systemcall 123 天前 via Android
可以试试用 zram ,策略激进点,你这个场景应该可以节省不少内存。牺牲性能、吃 CPU ,但是比 swap 到磁盘快
swap 好像也可以先压缩后再放硬盘上,没试过。主机是什么配置? CPU 和硬盘是什么呢? 很多办法都可以限制单个进程最大的 CPU 使用。还有就是你觉得卡死了,可能只是因为一直在反复地把页面从内存和 swap 之间搬来搬去,你可以试试写个程序来监控和达到一个阈值来重启对应的服务,不要等满了再重启就好 |
19
systemcall 123 天前 via Android
|
![]() |
20
northbrunv 123 天前
@systemcall 一个月多花 5 块钱能解决的东西,为什么要浪费时间调来调去?
|
![]() |
21
dianso 123 天前
我的 2C2G 换了 2C4G 现在 2C8G
每次升级多几块钱而已 |