2019独角兽企业重金招聘Python工程师标准>>>

典型的,提供大量静态文件访问的web服务器,缓存服务器(如squid), 均要注意这个问题

网上的教程,大约只是简单说明了如何设置ulimit和file-max, 但并没有说清楚这两者之间的差别,让人一头雾水

1. file-max的含义

man proc,可得到file-max的描述:

/proc/sys/fs/file-max
              This  file defines a system-wide limit on the number of open files for all processes.  (See
              also setrlimit(2),  which  can  be  used  by  a  process  to  set  the  per-process  limit,
              RLIMIT_NOFILE,  on  the  number  of  files it may open.)  If you get lots of error messages
              about running out of file handles, try increasing this value:

即file-max是设置 系统所有进程一共可以打开的文件数量 。同时一些程序可以通过setrlimit调用,设置每个进程的限制。如果得到大量使用完文件句柄的错误信息,是应该增加这个值。

也就是说,这项参数是系统级别的。

echo  6553560 > /proc/sys/fs/file-max

或修改 /etc/sysctl.conf, 加入

fs.file-max = 6553560 重启生效

2. ulimit的

Provides control over the resources available to the shell and to processes started by it, on systems that allow  such control.

即设置当前shell以及由它启动的进程的资源限制。

显然,对服务器来说,file-max, ulimit都需要设置,否则就可能出现文件描述符用尽的问题,为了让机器在重启之后仍然有效,强烈建立作以下配置,以确保file-max, ulimit的值正确无误:

1. 修改/etc/sysctl.conf, 加入

fs.file-max = 6553560

2.系统默认的ulimit对文件打开数量的限制是1024,修改/etc/security/limits.conf并加入以下配置,永久生效

* soft nproc 65535

* hard nproc 65535

* soft nofile 65535 
* hard nofile 65535

修改完之后,重启即可生效

soft nproc: 可打开的文件描述符的最大数(软限制)

hard nproc: 可打开的文件描述符的最大数(硬限制)

soft nofile:单个用户可用的最大进程数量(软限制)

hard nofile:单个用户可用的最大进程数量(硬限制)

限制可以使用: ulimit -SHn 65536

转载于:https://my.oschina.net/u/269655/blog/663854

file-max与ulimit的设置,nginx 500错误的原因相关推荐

  1. nginx 500错误

    nginx 500错误总结 1.nginx 500 概览 500--服务器内部错误:服务器遇到错误,无法完成请求 501--尚未实施:服务器不具备完成请求的功能,如:当服务器无法识别请求方法时,服务器 ...

  2. Nginx 500错误总结

    500(服务器内部错误)  服务器遇到错误,无法完成请求. 501(尚未实施)  服务器不具备完成请求的功能.例如,当服务器无法识别请求方法时,服务器可能会返回此代码. 502(错误网关)  服务器作 ...

  3. apache php 500,apache出现500错误的原因是什么

    apache出现500错误的原因是:1.apache配置文件模块开启问题:2.php.ini文件设置问题:3.权限问题,如果文件没有权限进行读取就会抛出这个错误:4.没有开启rewrite_modul ...

  4. HTTP报500错误的原因

    HTTP报500错误的原因 http请求报500错误,是服务器内部错误,找后台人员解决

  5. 反思本地与测试服一个接口不同的响应:本地正常测试服不行500错误,原因php版本新语法不一样

    新php版本有类型规定与?? 有几个测试服  php版本都不一样 5.6  7.2的都有 我本地7.3 但是测试服务器上是5.6的,有7.3的新语法,直接报了一个500,最终排查出 是新语法的问题,调 ...

  6. LunarPages空间500错误原因及解决办法

    我们在使用LunarPages空间时,有时在安装程序时可能经常出现500错误这一般是由于服务器内部出现的错误引起的,那么导致500错误原因有哪些呢?又该如何解决呢?下面来说说500错误常见原因及解决办 ...

  7. 服务器网页500错误修复工具,HTTP500错误是什么?如何修复

    500 Internal Server Error是一个非常普通的HTTP状态代码,表示网站的服务器出了点问题,但是服务器不能更准确地说明的问题是什么. 您可以通过以下几种常见方式来查看HTTP 50 ...

  8. 修改html文件500错误信息,打开网页提示 HTTP500错误的终极解决方法

    http 500内部服务器错误说明IIS服务器无法解析ASP代码,访问一个静态页面试试是否也出现这个问题,如果访问静态页面没问题,那就要分以下几种 情况来分析了: ① 你是否改变过计算机名称. ② 站 ...

  9. 静态html 500错误,HTTP-500错误

    http 500内部服务器(HTTP-Internal Server Error)错误说明IIS服务器无法解析ASP代码,访问一个静态页面试试是否也出现这个问题,如果访问静态页面没问题,那就要分以下几 ...

最新文章

  1. C语言实现DES,3DES以及基于3DES的文件加密系统
  2. SpringBoot启动标识修改
  3. java b2b2c shop 多用户商城系统源码- eureka集群整合hystrix框架
  4. UESTC_摩天轮 2015 UESTC Training for Dynamic ProgrammingProblem K
  5. printf按8进制、16进制输出
  6. 线性表之顺序存储结构相关算法学习
  7. 如何判断mysql死锁_MySQL 死锁问题分析
  8. 【转载】Java方向如何准备BAT技术面试答案(汇总版)
  9. python100以内自然数之和_python输出100以内的质数与合数实例代码
  10. java php cms_内容管理系统的开发策略研究——以PHP CMS、Node.js CMS、Java CMS为例
  11. emacs VS vim 替换为回车符
  12. 天空之镜?瑞士冰川?Nono,这里其实是新疆!
  13. 2019CCPC湖南全国邀请赛(广东省赛、江苏省赛)重现赛
  14. 【LEACH协议】基于matlab实现无线传感器网络LEACH与DEEC协议
  15. CoLab - 图像人脸检测_框出人脸
  16. Java语言查询附近店铺算法
  17. 农民工工地受伤是否就可以申请工伤?
  18. DBC数据库转ACC数据工具教程
  19. 如何在outlook里面把收件箱分组,以便快速的查看最重要的email
  20. modelsim-win64-10.1c-se.exe安装备忘

热门文章

  1. 如何找到一个好的Joomla主机提供商
  2. 城南云计算中心项目纳入国家储备库
  3. 用一句位运算判断两个整数的大小并返回较大者
  4. NHibernate初学者指南(15):使用LINQ to NHibernate提供程序查询数据
  5. 新手学.net(习惯问题)
  6. 闰年的判断方法_练习题079:如何判断某年为闰年
  7. Android编程之SparseArrayE详解 Android编程之SparseArrayE详解
  8. 搭建windows的solr6服务器
  9. Qt5设置应用程序图标及程序的发布
  10. 模糊搜索cell效果