Liunx性能调优让你的服务器更强大,增加TCP连接数限制

Stella981
• 阅读 367

Linux系统中tcp连接数是有最大限制的,即是进程可打开的最大文件描述个数,通过命令查看:
ulimit -n

文章每周持续更新,各位的「三连」是对我最大的肯定。可以微信搜索公众号「 后端技术学堂 」第一时间阅读(一般比博客早更新一到两篇)

TCP连接数限制

高负载的服务器通过修改ulimit参数达到合理规划用户使用资源和系统资源的目的。

用户级别

修改最大连接数

  • 修改系统参数实现

ulimit -SHn 65535

-H硬限制是实际的限制,-S软限制是warnning限制,只会做出warning. 如果运行ulimit命令修改的时候没有加上SH,就是两个参数一起改变.

  • 修改pam模块配置实现
  1. session required /lib/security/pam_limits.so

  2. 修改/etc/security/limits.conf如下举例

    * soft nofile 65536
    * hard nofile 65536
    *代表所有用户,当然也可以指定用户如root

确认修改是否生效

项目中遇到修改后虽然命令查看已经是修改后的值,但是进程连接的tcp个数还是系统默认的1024导致接入拒绝

查看进程实际的最大连接数

cat /proc/进程pid/limits
Max open files 就是当前进程的实际值

系统级别

查看总的系统打开文件限制

cat /proc/sys/fs/file-max

若要修改可以在rc.local加

echo 你要的 > /proc/sys/fs/file-max


更多

可以微信搜索公众号「 后端技术学堂 」回复「资料」有我给你准备的各种编程学习资料。文章每周持续更新,我们下期见!

点赞
收藏
评论区
推荐文章
blmius blmius
2年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Stella981 Stella981
2年前
Linux下解决高并发socket最大连接数限制,tcp默认1024个连接
原文:Linux下解决高并发socket最大连接数限制,tcp默认1024个连接(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fwww.cnblogs.com%2Flemonflm%2Fp%2F7975812.html)  linux作为服务器系统,当socket运行高并发TCP
Wesley13 Wesley13
2年前
MongoDB 连接数高产生原因及解决
MongoDBSharding架构下连接数很容易达到很高,这里连接数分为几个概念:tcp连接数netstat可以统计的,一般这个是最高.如果mongod/mongos在同一台服务器,更明显。参考命令:netstatant|awk'{print$5}'|awkF:'{print$1}'|sort|uniqc|sort
Stella981 Stella981
2年前
CentOS下高并发socket最大连接数所受的各种限制
部分内容做了修订1、修改用户进程可打开文件数限制在Linux平台上,无论编写客户端程序还是服务端程序,在进行高并发TCP连接处理时,最高的并发数量都要受到系统对用户单一进程同时可打开文件数量的限制(这是因为系统为每个TCP连接都要创建一个socket句柄,每个socket句柄同时也是一个文件句柄)。可使用ulimit命令查看系统允许当前用户
Wesley13 Wesley13
2年前
TCP
软件名称:TCPZ  (TCPZNetworkMonitor)操作系统:WindowsXP/2003/Vista/2008/Windows7,  32bit/64bit作者邮箱:deepxw126.com破解TCP/IP连接数限制,释放网络潜能,下载更快,浏览更流畅。图表显示网络连接数据,分析下载速度的好帮手
Wesley13 Wesley13
2年前
4、jstack查看线程栈信息
1、介绍利用jps、top、jstack命令找到进程中耗时最大的线程,以及线程状态等等,同时最后还可以显示出死锁的线程查找:FoundoneJavaleveldeadlock即可1、jps获得进程号!(https://oscimg.oschina.net/oscnet/da00a309fa6
Wesley13 Wesley13
2年前
mysql知识补遗
mysql最大连接数默认是151,其中150是用来给普通用户连接数据库,另外一个是用来给管理员的。showVARIABLESlike"max\_connections";//查看最大连接数showprocesslist;//查看当前实际连接数mysql最大连接数是16384setgloblmax\_connections1200
Wesley13 Wesley13
2年前
MySQL查看最大连接数和修改最大连接数
1、查看最大连接数showvariableslike'%max\_connections%';2、修改最大连接数setGLOBALmax\_connections200;以下的文章主要是向大家介绍的是MySQL最大连接数的修改,我们大家都知道MySQL最大连接数的默认值是100,这个数值对于并发连接很多的数据库的应用是
Wesley13 Wesley13
2年前
34.TCP取样器
阅读文本大概需要3分钟。1、TCP取样器的作用   TCP取样器作用就是通过TCP/IP协议来连接服务器,然后发送数据和接收数据。2、TCP取样器详解!(https://oscimg.oschina.net/oscnet/32a9b19ba1db00f321d22a0f33bcfb68a0d.png)TCPClien