导读:在linux中,/proc/sys/net/core/somaxconn这个参数,linux中内核的一个不错的参数somaxconn

  看下其解析:

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

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

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

  - somaxconn参数.

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

  1. 关于somaxconn参数:

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

  Purpose:

  Specifies the maximum listen backlog.

  Values:

  Default: 1024 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 攻击也会有所帮助。

修改somaxconn

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

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

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

net.core.somaxconn = 2048

然后在终端中执行

sysctl -p

转载:http://www.233.com/linux/fudao/20100716/102722174.html

linux中内核的一个不错的参数somaxconn的更多相关文章

  1. linux中的 tar命令的 -C 参数,以及其它一些参数(转)

    linux中的 tar命令的 -C 参数,以及其它一些参数 复制源:http://www.cnblogs.com/li-hao/archive/2011/10/03/2198480.htmltar命令 ...

  2. c++中在一个类中定义另一个只有带参数构造函数的类的对象

    c++中在一个类中定义另一个只有带参数构造函数的类的对象,编译通不过 #include<iostream> using namespace std; class A { public:  ...

  3. 在Linux中要修改一个文件夹或文件的权限

    在Linux中要修改一个文件夹或文件的权限我们需要用到linux chmod命令来做,下面我写了几个简单的实例大家可参考一下. 语法如下: chmod [who] [+ | - | =] [mode] ...

  4. linux中的 tar命令的 -C 参数,以及其它一些参数

    tar命令的-C参数    $ tar -cvf file2.tar /home/usr2/file2 tar: Removing leading '/' from members names hom ...

  5. (转)关于linux中内核编程中结构体的赋值操作(结构体指定初始化)

    网址:http://blog.chinaunix.net/uid-24807808-id-3219820.html 在看linux源码的时候,经常会看到类似于下面的结构体赋值的代码: struct d ...

  6. linux中内核延时函数 (转)

    第一类延时函数原型是:(忙等) void ndelay(unsigned long nsecs); void udelay(unsigned long usecs); void mdelay(unsi ...

  7. Linux中强制结束一个进程的终极方法

    在 Linux Ubuntu 服务器上用 dnx 基于 Kestrel 成功运行一个 ASP.NET 5 站点后,怎么也无无法退出. 运行的命令如下: /data/git/dnx/artifacts/ ...

  8. 【Python】 linux中python命令的命令行参数

    Python命令行参数 原文地址:http://blog.163.com/weak_time/blog/static/25852809120169333247925/ Python的命令行参数,提供了 ...

  9. linux中如何对一个文件的内容进行处理,文件中每行有多个字段的值,中间用空格分隔开?

    需求描述: 今天在帮同事看个需求,将操作系统上的文件进行修改名字,改为特定的名字,所以呢,就先把这些原名字及对应的新名字关系放到了一个文本中,对于这个文本执行循环. 文件格式如下: .00000005 ...

随机推荐

  1. hive 桶相关特性分析

    1. hive 桶相关概念     桶(bucket)是指将表或分区中指定列的值为key进行hash,hash到指定的桶中,这样可以支持高效采样工作.     抽样( sampling )可以在全体数 ...

  2. 如何做好Flex与Java交互

    三种flex4与Java顺利通信的方式是: flex与普通java类通信RemoteObject; flex与服务器交互HTTPService; flex与webservice交互WebService ...

  3. Configuration ReportNG with TestNG

    下载 Reporter.jar,velocity-dep-1.4.jar 和 Guice.jar: 配置项目属性:Properties ->TestNG ->Disable Default ...

  4. Java学习----main详解

    public class Test1 { public static void main(String[] args) { System.out.println("Hello"); ...

  5. 用jquery写了个选项卡,当作一个笔记吧。

    <!DOCTYPE HTML> <html lang="en"> <head> <meta http-equiv="Conten ...

  6. C#.net 货币格式转换

    /// <summary> /// 输入Float格式数字,将其转换为货币表达方式 /// </summary> /// <param name="ftype& ...

  7. jquery实现DIV层拖动

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. 关于-webkit-tap-highlight-color的一些事儿

    这个属性只用于iOS (iPhone和iPad).当你点击一个链接或者通过Javascript定义的可点击元素的时候,它就会出现一个半透明的灰色背景.要重设这个表现,你可以设置-webkit-tap- ...

  9. node.js使用经验记录

    MongoDB使用经验: 有时不知道MongoDB的错误码代表什么,那有这个链接: https://github.com/mongodb/mongo/blob/master/src/mongo/bas ...

  10. python中快速删除实例对象中的所有属性

    def DeleteObjectAllProperties(objectInstance): if not objectInstance: return listPro =[key for key i ...