在本篇内容里小编给大家整理的是一篇关于php中unable to fork报错简单解决方法,对此有兴趣的朋友们可以跟着学习下。
今天小编遇到一个问题,当调用了system方法,并且执行了shell脚本,开始的时候,一切都非常正常,但是当程序运行后一段时间,出现了显示unable to fork的报错,这个是什么原因呢,后来小编排查了下,主要是因为达到用户的进程上限了,下面小编给大家介绍下解决方式。
限制linux用户的进程数
修改以下文件
vi /etc/security/limits.conf
vpsee hard nproc 32
@student hard nproc 32
@faculty hard nproc 64
ulimit 不带 -H 和 -S 参数的时候同时设置 Hard 和 Soft
ulimit -u
65535
ulimit -u 65534
ulimit -u 65535
-bash: ulimit: max user processes: cannot modify limit: Operation not permitted
ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 30493
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 65535
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 10240
cpu time (seconds, -t) unlimited
max user processes (-u) 65534
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
查看各系统用户的进程数
ps h -Led -o user | sort | uniq -c | sort -n
2 nobody
3 redis
34 www
64 mysql
174 root
确定某用户的进程数的分布情况
ps -o nlwp,pid,lwp,args -u username | sort -n
问题原因分析:
问题原因
system调用会fork新的进程,因为每个用户有最大进程数限制,简单的说就是达到用户的进程上限了
到此这篇关于php中unable to fork报错简单解决方法的文章就介绍到这了,更多相关php中unable to fork报错怎么解决内容请搜索编程学习网以前的文章希望大家以后多多支持编程学习网!
沃梦达教程
本文标题为:php中unable to fork报错简单解决方法


基础教程推荐
猜你喜欢
- Laravel修改验证提示信息为中文的示例 2023-03-08
- Laravel 解决composer相关操作提示php相关异常的问题 2023-03-08
- php+mysql开发的最简单在线题库(在线做题系统)完整案例 2023-01-04
- PHP基于反射机制实现自动依赖注入的方法详解 2022-10-02
- php如何获取当前日期和星期 2024-12-06
- php去除deprecated的实例方法 2022-09-02
- PHP laravel使用自定义邮件类实现发送邮件 2023-07-03
- PHP采用get获取url汉字出现乱码的解决方法 2024-03-28
- php生成短网址/短链接原理和用法实例分析 2023-04-20
- PHP字符串函数系列之nl2br(),在字符串中的每个新行 (\n) 之前插入 HTML 换行符br 2024-03-28