PHP -fpm 间歇性的 child **** exited on signal 11 (SIGSEGV)

2017-04-26 16:46:03 +08:00
 eecjimmy

环境:

PHP 5.5.38
nginx version: nginx/1.10.2

配置

[php-fpm]
pm = static
pm.max_children = 50
pm.max_requests = 1024
...
;request_terminate_timeout = 0

[nginx.conf]

worker_processes auto;
events {
    worker_connections  1024;
}
http{
    sendfile            on;
    tcp_nopush          on;
    tcp_nodelay         on;
    keepalive_timeout   65;
    types_hash_max_size 2048;
}


间歇性的出现这个问题, 也不重复, 请问大家碰到这种情况应如何排查呢?谢谢.

4042 次点击
所在节点    PHP
17 条回复
BOYPT
2017-04-26 17:17:08 +08:00
一般跟配置关系不大,是 php 进程的段错误;用 gdb 打开 coredump ,看具体涉及哪一块的错误(一般是外部模块),更新一下代码之类的。
也有人遇到是日志文件太大导致 php 的 SIGSEGV
justyy
2017-04-26 17:23:46 +08:00
我的配置,仅供参考,

pm = ondemand
pm.max_children = 5000
pm.process_idle_timeout = 10s;
pm.max_requests = 500
momocraft
2017-04-26 17:29:43 +08:00
可以试试控制条件做压力测试: 不同 php build ,不同 dist ,不同机器 等
eecjimmy
2017-04-26 17:52:01 +08:00
@BOYPT @justyy @momocraft 感谢, yum 安装的, 没有--enable-debug, 回头要换个环境再试试.
kungfuchicken
2017-04-26 17:52:43 +08:00
把服务器 coredump 打开,然后 gdb 跟下 dump 文件看看
eecjimmy
2017-04-26 17:54:11 +08:00
@kungfuchicken 嗯, 要重新编译个, 里面还不少扩展.
eecjimmy
2017-04-26 17:54:30 +08:00
@kungfuchicken 就怕到时候重新编译了, 又复现不到了, 就尴尬了.
kungfuchicken
2017-04-26 17:58:31 +08:00
@eecjimmy 在 --disable-debug 的条件下, coredump 文件一样会生成, gdb bt 一下能看到最后的栈追踪,基本上就能确定是哪的问题了
eecjimmy
2017-04-26 18:34:56 +08:00
@kungfuchicken 哦哦,我试了下没生成,晚上回去再试试
ericFork
2017-04-26 22:52:43 +08:00
你用 APCu 了没?如果用了的话禁用试试
eecjimmy
2017-04-27 09:27:57 +08:00
@kungfuchicken 但是我看文档里面有这样的说法
```To get a backtrace with correct information you must have PHP configured with --enable-debug!```
eecjimmy
2017-04-27 09:28:16 +08:00
eecjimmy
2017-04-27 10:14:56 +08:00
@ericFork 没有使用, 之前有装 apc 扩展, 然后已经卸载了, 还有偶现这个问题.
kungfuchicken
2017-04-27 17:08:30 +08:00
@eecjimmy 说了,coredump 文件的生成,是 Linux 系统的配置项目,跟 PHP 的编译参数无关
eecjimmy
2017-05-05 17:48:52 +08:00
@kungfuchicken
gdb 的相关信息如下, 但是真的看不懂呢
gist: https://gist.github.com/eecjimmy/66f79ca747bac2fa63ddf5fca0f7ef62
kungfuchicken
2017-05-05 19:39:40 +08:00
@eecjimmy 内核 bug, 试试升级到 php5.6 吧
eecjimmy
2017-05-05 20:27:05 +08:00
@kungfuchicken 开发环境就是这个版本,项目马上上线,不敢乱调环境呀,尴尬了!

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

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

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

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

© 2021 V2EX