阿里云挂后台的 nohup 老被自动杀掉。
写了个 java websocket 的程序,想在后台跑着,java 每次都莫名其妙被杀掉,有大佬知道是什么情况吗。
用 mvn exec:java 命令跑的。。。
1
jason19659 OP 刚刚试了一下,谷歌云没问题
|
2
rrfeng 2017-05-03 14:12:42 +08:00
被杀掉跟什么云有毛关系,顶多跟操作系统有关。
|
3
jason19659 OP @rrfeng #2 都是 Ubuntu 16.04.2
|
4
mringg 2017-05-03 14:15:48 +08:00 via iPhone 1
感觉是你程序的问题
|
5
rrfeng 2017-05-03 14:16:35 +08:00
『顶多』
更多可能的还是你程序问题。怎么确定是被杀掉而不是自己死掉的? |
6
cxbig 2017-05-03 14:17:38 +08:00 via iPhone 1
你试试在 tmux 里不带 nohup 跑,另外看看 syslog 有什么线索
|
7
cxbig 2017-05-03 14:18:18 +08:00 via iPhone 1
java 的程序也可以查一下你程序自己的 log
|
8
congeec 2017-05-03 14:20:20 +08:00 via iPhone
做成 service 吧,会自动重启,有 log
|
9
ipconfiger 2017-05-03 14:21:57 +08:00
用 supervisor
|
10
jason19659 OP @cxbig #5 log 跑到一半突然就没了。。之前怀疑是内存不够,加了虚拟内存好像也一样。。
|
11
ryV60s 2017-05-03 14:25:36 +08:00
看应用日志或者系统日志
|
12
kn007 2017-05-03 14:26:18 +08:00 via Android 2
看系统日志,看看是不是 oom 了
|
13
knightdf 2017-05-03 14:26:45 +08:00 1
出发 OOM 了把?看看 sys message
|
14
mansur 2017-05-03 14:27:57 +08:00
cpu 或内存超了,被阿里云强制杀了
|
15
jason19659 OP May 3 14:18:05 iZ282ilj29sZ kernel: [3631858.323422] Out of memory: Kill process 31579 (java) score 58 or sacrifice child
May 3 14:18:05 iZ282ilj29sZ kernel: [3631858.325366] Killed process 31579 (java) total-vm:2332480kB, anon-rss:301924kB, file-rss:0kB 怎么办。。。 total used free shared buff/cache available Mem: 990M 628M 223M 11M 138M 315M Swap: 3.8G 80M 3.7G 加了虚拟内存没有用啊。。。 |
16
jason19659 OP @jason19659 #13 看出来了。。cpu 炸了。。
|
17
ZxBing0066 2017-05-03 14:37:42 +08:00
是 zsh 么,zsh 挂 nohup 需要配合 disown,不然退出 zsh 就会被干掉
|
18
fengfisher2 2017-05-03 14:41:37 +08:00
你有看 message 的日志吗?是什么原因导致。
|
19
fengfisher2 2017-05-03 14:42:09 +08:00
妹的,打了一半,没发出去,发完就那么多回复了。哈哈。
|
20
jason19659 OP @fengfisher2 #17 阿里云的一核 cpu,跑着 web 服务然后再跑这个就炸了。。。升级好贵。。
|
21
fengfisher2 2017-05-03 14:46:04 +08:00
@jason19659 嗯,所以,不是阿里云的问题。要么优化,要么给钱。
|
22
reus 2017-05-03 14:47:04 +08:00
Out of memory
Out of memory Out of memory Out of memory Out of memory Out of memory Out of memory Out of memory Out of memory Out of memory |
23
jason19659 OP #19 其实还是阿里云的机器太烂。。。同配置的谷歌云就跑的好好的。。。
|
24
timothyye 2017-05-03 14:56:49 +08:00 via Android 3
supervisor,systemd,upstart 选一个吧
|
26
msg7086 2017-05-03 14:59:28 +08:00
(java) total-vm:2332480kB
你 Java 吃了 2.3G 内存,炸了应该是不意外。 另外机器烂或者不烂是不会影响内核杀进程的。 阿里云的机器就算是发霉长毛了也不会因为这个所以乱杀进程。 |
27
Buffer2Disk 2017-05-03 16:07:15 +08:00
跟机器烂不烂没关系
|
28
goodryb 2017-05-03 16:32:31 +08:00
|
29
solee 2017-05-03 16:39:19 +08:00
不充个 1000w 怎么能行~ 试试进程管理的工具嘛 supervisor
|
30
jwnlive 2017-05-03 17:38:22 +08:00
程序的问题,和机器没关系了
|
31
firefox12 2017-05-03 17:49:52 +08:00
爬取 taobao.com 失败 !
|
32
huangzxx 2017-05-03 17:50:35 +08:00
systemd
|
33
janxin 2017-05-03 17:52:15 +08:00
机器压力过大会自动 kill 程序,你看看是不是当前 java 进程权重太高了?如果太高就赶紧换更高配置的
|
34
isno 2017-05-03 17:56:08 +08:00
阿里云这锅可不能背
|
35
jason19659 OP @isno #30 同样的机器配置在谷歌云上跑一点问题都没有
|
36
ysjdx 2017-05-03 18:12:23 +08:00
OOM 了。。。
|
38
mooseen 2017-05-03 18:56:16 +08:00
应该是内容占用太多,之前使用 redhat 发现内存占用过高时,OS 直接把 sshd 服务给杀了...
|
39
YouXia 2017-05-03 19:00:33 +08:00
@jason19659
既然都是程序员了,那么还是对自己要求高点,别换个系统症状不一样就认为是系统问题。 在谷歌云上没问题,那就需要你去检查为什么没问题,比如依赖的库不一样,比如内存泄露,运行时间导致等等。 |
40
eloah 2017-05-03 21:05:37 +08:00
阿里云表示这个锅不背
|
41
hand515 2017-05-03 21:19:33 +08:00
这个机器不同,应该是系统配置的问题
|
42
hand515 2017-05-03 21:20:33 +08:00
|
44
gesse 2017-05-04 09:36:20 +08:00
没有人说 screen 吗?
|
45
jason19659 OP @YouXia #35 13 楼已经说了 cpu100%
|
46
imnpc 2017-05-04 11:59:54 +08:00
阿里云一般是内存超了 这个 1G~2G 内存上最常见的故障...
没内存了 然后全部挂掉 强制重启 以前有 512M 的时候泡个 typecho 都能挂掉 |
47
xiaoji24 2017-05-04 14:24:11 +08:00
感觉 LZ 对于给阿里云洗地的都自动屏蔽了 哈哈哈哈
|
48
xiaoji24 2017-05-04 14:26:05 +08:00
但是讲道理,nohup 是 deamon 运行 cpu100%正常也不会杀掉 一般都是因为内存 kernel 算出这个进程的 oom_score 最高才会干掉 要是想解决,升内存吧 大兄弟~~~
|
49
jason19659 OP @xiaoji24 #44 虚拟内存也没用吗。。
|
50
xiaoji24 2017-05-04 16:04:21 +08:00
@jason19659 大兄弟可以可以,要不就配置 swap 也行。。。
|
51
loveminds 2017-06-01 19:27:44 +08:00
@ipconfiger 不喜欢这垃圾,直接用 systemd 就好
|
53
asdqwe876 2017-06-14 19:48:23 +08:00 via Android
前两年用阿里云就有这个问题。没想到还没解决(故意的吧)😂。我之前的解决方式是自己写了守护。
ps 高峰期很容易出现这类问题 |