要调整一下Linux的最大文件打开数,否则squid在高负载时执行性能将会很低。另外,在Linux下面部署应用时,有时候会遇上 Socket/File:Can’t open so many files这样的问题,这个值也会影响服务器的最大并发数。其实Linux是有文件句柄限制的,但默认不是很高,一般是1024,生产服务器很容易就会达 到这个值,所以需要改动此值。刚开始我采用vim/etc/security/limit.conf命令,在最后一行添加如下代码:
* soft nofile 60000
* hard nofile 65535

但重启后一切都还原了。

正解做法应该为在Centos5.5的/etc/rc.local文件里添加如下命令行:
ulimit -SHn 65535

当然了,我们也可以在Nginx的一些监控脚本里实时添加此命令行,达到重启也能生效的目的。

另外,ulimit -n命令并不能真正看到文件的最大文件打开数,大家可用如下脚本查看:
#!/bin/bash
for pid in 'ps aux |grep nginx |grep -v grep|awk '{print$2}''
do
cat /proc/${pid}/limits |grep 'Max open files'
done

调整Linux的最大文件打开数的更多相关文章

  1. Linux下设置最大文件打开数nofile及nr_open、file-max

    在开发运维的时候我们常常会遇到类似“Socket/File: Can’t open so many files”,“无法打开更多进程”,或是coredump过大等问题,这些都可以设置资源限制来解决.今 ...

  2. 【Linux命令】ulimit设置最大文件打开数

    一.简介 在Linux下有时会遇到Socket/File : Can't open so many files的问题.其实Linux是有文件句柄限制的,而且Linux默认一般都是1024(阿里云主机默 ...

  3. ulimit 命令详解 socket查看linux最大文件打开数

    ulimit 命令详解     Linux对于每个用户,系统限制其最大进程数.为提高性能,可以根据设备资源情况,设置各linux 用户的最大进程数 可以用ulimit -a 来显示当前的各种用户进程限 ...

  4. linux最大文件打开数和swap限制

    linux最大文件打开数和swap限制   逑熙 关注 2017.07.24 15:39* 字数 388 阅读 314评论 0喜欢 0 linux 2.6+的核心会使用硬盘的一部分做为SWAP分区,用 ...

  5. linux 最大文件打开数

    配置文件 vim /etc/security/limits.conf   # /etc/security/limits.conf##This file sets the resource limits ...

  6. Centos7修改默认最大文件打开数

    方法一: [root@bogon ~]# vi /etc/systemd/system.conf [root@bogon ~]# cat /etc/systemd/system.conf # This ...

  7. mysql 系统用户最大文件打开数限制

    纸上得来终觉浅,绝知此事多宕机...记录一下自己很蠢的一次故障处理过程. 上周的时候,一个刚上线的系统又开始反映登不上了,因为最近这个系统也老是出现这个问题,开发也一直在找问题中,所以也没太在意.于是 ...

  8. [转帖]备忘:CentOS-7 使用systemctl 管理的服务,文件打开数上限1024要改

    备忘:CentOS-7 使用systemctl 管理的服务,文件打开数上限1024要改 https://blog.csdn.net/toontong/article/details/50440272 ...

  9. Centos修改文件打开数限制

    一.查看系统限制最大打开数 cat /proc/sys/fs/file-max 还有一个问题是file-max最大能设置多大呢?一个经验算法是 256个fd 需4M内存.例如8G内存,8*1024/4 ...

随机推荐

  1. Rust 智能指针(一)

    Rust 智能指针(一) 1.Box<T> Box<T>是指向堆中的指针. fn main() { let box = Box::new(3); println!(" ...

  2. tkinter的GUI设计:界面与逻辑分离(一)-- 初次见面

    PyQt实现界面与逻辑分离的设计很是方便,详情可以见我的第一篇博文. 不过本文将使用python的标准库 tkinter,来实现界面与逻辑分离的GUI 设计. 我们来设计一个很简单的程序: 目的:长度 ...

  3. 软考计算机网络原理之IP计算问题汇总

    转自 http://www.cnblogs.com/jyh317/archive/2013/04/14/3018650.html 1.IP地址 分类: ①A类IP地址 ②B类IP地址 ③C类IP地址 ...

  4. 【HNOI2014】江南乐

    题面 题解 知识引入 - \(SG\)函数 任何一个公平组合游戏都可以通过把每个局面看成一个顶点,对每个局面和它的子局面连一条有向边来抽象成这个"有向图游戏".下面我们就在有向无环 ...

  5. BZOJ2439【中山市选2011】序列

    题面 题解 设$f[i]$表示将$[1,i]$修改为递增的最小代价, $g[i]$表示将$[i,n]$修改为递减的最小代价. $L[i]$表示将$[1,i]$修改为倒$\text V$的代价 $$ \ ...

  6. quartz 任务高度的动态修改

    package com.example.demo.controller; import org.quartz.*;import org.quartz.impl.StdSchedulerFactory; ...

  7. springmvc controller转发setViewName时找不到路径的问题以及转发视图时出现找不到样式的问题

    注释掉的部分是错误的写法,@RequestMapping 需要将方法放置在要转发的视图所在目录下,不然视图会找不到样式(无法正确的加载css文件), 如果将方法放在了视图所在目录下,那么 setUie ...

  8. python 实现字符串的切片功能

    '''string切片''' def string_split(stringone,split): m = [] if type(split)!=str: return False if split ...

  9. java多线程之述解

    说起线程 就不得不提进程 他们之间的关系很紧密 进程:内存中运行的应用程序 每个进程都有自己的一块内存空间 而线程是进程中的一个执行单元 一个进程中可以有多个线程 多线程的好处就是可以并发操作程序 将 ...

  10. hive的优化

    hive.optimize.cp=true:列裁剪hive.optimize.prunner:分区裁剪hive.limit.optimize.enable=true:优化LIMIT n语句hive.l ...