linux中net.core.somaxconn的作用

Linux中,/proc/sys/net/core/somaxconn这个参数,linux中内核的一个不错的参数somaxconn

  看下其解析:

  对于一个TCP连接,Server与Client需要通过三次握手来建立网络连接.当三次握手成功后,

  我们可以看到端口的状态由LISTEN转变为ESTABLISHED,接着这条链路上就可以开始传送数据了.

  每一个处于监听(Listen)状态的端口,都有自己的监听队列.监听队列的长度,与如下两方面有关:

  - somaxconn参数.

  - 使用该端口的程序中listen()函数.

  1. 关于somaxconn参数:

  定义了系统中每一个端口最大的监听队列的长度,这是个全局的参数,默认值为128,具体信息为:

  Purpose:

  Specifies the maximum listen backlog.

  Values:

  Default: 128 connections

  Range: 0 to MAXSHORT

  Type: Connect

  Diagnosis:

  N/A

  Tuning

  Increase this parameter on busy Web servers to handle peak connection rates.

  看下FREEBSD的解析:

  限制了接收新 TCP 连接侦听队列的大小。对于一个经常处理新连接的高负载 web服务环境来说,默认的 128 太小了。大多数环境这个值建议增加到 1024 或者更多。 服务进程会自己限制侦听队列的大小(例如 sendmail(8) 或者 Apache),常常在它们的配置文件中有设置队列大小的选项。大的侦听队列对防止拒绝服务 DoS 攻击也会有所帮助。

我们可以通过,

echo 1000 >/proc/sys/net/core/somaxconn

来修改这个参数。

修改somaxconn

该内核参数默认值一般是128,对于负载很大的服务程序来说大大的不够。一般会将它修改为2048或者更大。

echo 2048 >   /proc/sys/net/core/somaxconn    但是这样系统重启后保存不了

在/etc/sysctl.conf中添加如下

net.core.somaxconn = 2048

然后在终端中执行

sysctl -p

原文地址:https://www.cnblogs.com/leonardchen/p/9635407.html

时间: 2024-10-29 21:53:07

linux中net.core.somaxconn的作用的相关文章

Linux中whatis与makewhatis的作用

在好久没有和大家分享 Linux 命令方面的东东了,Linux 是一个以命令操作为主的系统,众多的命令与其作用,要想都记住也不太现实.因此,用 man info whatis 等工具来查看命令的作用就很重要了. Linux 中的 whatis 命令可以从它的字面意思可以看出来,就是“这是什么”,通过它可以知道某命令是用来干什么的,而且是用很简短的方式来描述. AD:2014WOT全球软件技术峰会北京站 课程视频发布 在好久没有和大家分享 Linux 命令方面的东东了,Linux 是一个以命令操作

Linux 中各个文件夹的作用

/  根目录 包含了几乎所的文件目录.相当于中央系统.进入的最简单方法是:cd /. /boot  引导程序,内核等存放的目录 这个目录,包括了在引导过程中所必需的文件.在最开始的启动阶段,通过引导程序将内核加载到内存,完成内核的启动(这个时候,虚拟文件系统还不存在,加载的内核虽然是从硬盘读取的,但是没经过Linux的虚拟文件系统,这是比较底层的东西来实现的.然后内核自己创建好虚拟文件系统,并且从虚拟文件系统的其他子目录中(例如/sbin 和 /etc加载需要在开机启动的其他程序或者服务或者特定

linux中内核的一个不错的参数somaxconn

导读:在linux中,/proc/sys/net/core/somaxconn这个参数,linux中内核的一个不错的参数somaxconn 看下其解析: 对于一个TCP连接,Server与Client需要通过三次握手来建立网络连接.当三次握手成功后, 我们可以看到端口的状态由LISTEN转变为ESTABLISHED,接着这条链路上就可以开始传送数据了. 每一个处于监听(Listen)状态的端口,都有自己的监听队列.监听队列的长度,与如下两方面有关: - somaxconn参数. - 使用该端口的

Linux中设定umask的作用

在linux中,常常都要提示设置:      umask 022 其作用如下: 功能说明:指定在建立文件时预设的权限掩码.语 法:umask [-S][权限掩码]补充说明:umask可用来设定[权限掩码].[权限掩码]是由3个八进制的数字所组成,将现有的存取权限减掉权限掩码后,即可产生建立文件时预设的权限.参 数:-S 以文字的方式来表示权限掩码. 文件:用八进制基数666,即无x位(可执行位)rw- rw- rw-.执行位需由用户自行加入 例一:设要生成的文件以rw- r-- r--这样的权限

linux中mmu作用的简单总结(未完)

linux中mmu的作用: 1.虚实转换 2.控制存储器存取允许 --物理地址不连续,转化成连续的虚拟地址,编程更方便 --可以map memory到0地址用来调试中断服务程序 --系统的某些地址段时不允许被访问的,否则会产生不可预料的后果,为了避免这类错误,可以通过MMU匹配表的设置将这些地址段设为用户不可存取类型.启动程序中生成的匹配表中包含地址映射,存储页大小(1M,64K,或4K)以及是否允许存取等信息.

linux中对文件的权限设置以及作用

一.通过权限的设置达到目录共享 在linux中通过对文件的权限设置可以充分对文件的 owner进行内容保护,也可以把内容分享给想要分享的用户.下面举例说明:1.首先在root权限下创建一个组,三个用户,将三个用户全部添加到同一组里groupadd gongxiang(创建一个组为gongxiang的组)useradd -G gongxiang zhangsan(创建一个用户zhangsan加入附属组gongxiang)useradd -G gongxiang zhangsi(创建一个用户zhan

如何在 Linux 中安装微软的 .NET Core SDK | Linux 中国

本分步操作指南文章解释了如何在 Linux 中安装 .NET Core SDK 以及如何使用 .NET 开发出第一个应用程序.-- Sk致谢译自 | ostechnix.com 作者 | Sk译者 | LCTT / runningwater .NET Core 是微软提供的免费.跨平台和开源的开发框架,可以构建桌面应用程序.移动端应用程序.网络应用程序.物联网应用程序和游戏应用程序等.如果你是 Windows 平台下的 dotnet 开发人员的话,使用 .NET core 可以很轻松就设置好任何

Linux中./configure,make,make install的作用

对LINUX中安装软件使用./configure,make,make install的解释: 例如:   Shell>tar zxvf libevent-1.4.14b-stable.tar.gz      Shell>cd libevent-1.4.14b-stable      Shell>./configure      Shell>make && make install  (1)./configure是检测安装平台的目标特征的.比如它会检测你是不是有CC或

Linux中,Tomcat 怎么承载高并发(深入Tcp参数 backlog)

一.前言 这两天看tomcat,查阅 tomcat 怎么承载高并发时,看到了backlog参数.我们知道,服务器端一般使用mq来减轻高并发下的洪峰冲击,将暂时不能处理的请求放入队列,后续再慢慢处理.其实操作系统已经帮我们做了一些类似的东西了,这个东西就是backlog.服务端一般通过 accept 调用,去获取socket.但是假设我们的程序处理不过来(比如因为程序bug,或者设计问题,没能及时地去调用 accept),那么此时的网络请求难道就直接丢掉吗? 当然不会!这时候,操作系统会帮我们放入