Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1763022
  • 博文数量: 323
  • 博客积分: 5970
  • 博客等级: 大校
  • 技术积分: 2764
  • 用 户 组: 普通用户
  • 注册时间: 2011-04-03 23:13
文章分类

全部博文(323)

文章存档

2018年(2)

2017年(11)

2016年(10)

2015年(27)

2014年(2)

2013年(30)

2012年(197)

2011年(44)

分类: SOLARIS

2015-09-14 17:32:48

1.TCP_TIME_WAIT_INTERVAL

  • 描述:通知 TCP/IP 将已关闭的连接控制块保留多久。在应用程序完成 TCP/IP 连接后,控制块将保留指定的时间。当连接比率较高时,这将累积大量的 TCP/IP 连接,从而导致服务器性能下降。服务器在某些峰值期间会延迟。如果服务器延迟,netstat 命令显示对 HTTP Server 打开的许多套接字处于 CLOSE_WAIT 或 FIN_WAIT_2 状态。明显的延迟可能会长达 4 分钟,其间服务器无法发送任何响应,但是 CPU 利用率保持很高,所有活动都在系统进程中。
  • 如何查看或设置:使用 get 命令来确定当前时间间隔,并使用 set 命令将时间间隔指定为 30 秒。例如:
    ndd -get /dev/tcp tcp_time_wait_interval     
    ndd -set /dev/tcp tcp_time_wait_interval 30000  
  • 缺省值:对于 Solaris 操作系统,缺省等待时间间隔为 240000 毫秒(即 4 分钟)。
  • 建议值:60000 毫秒。

2.TCP_FIN_WAIT_2_FLUSH_INTERVAL

  • 描述:指定禁止处于 FIN_WAIT_2 状态的连接保持该状态的计时器时间间隔。当连接比率较高时,这将累积大量的 TCP/IP 连接,从而导致服务器性能下降。在高峰时间段,服务器会发生延迟。如果服务器延迟,netstat 命令显示对 HTTP Server 打开的许多套接字处于 CLOSE_WAIT 或 FIN_WAIT_2 状态。明显的延迟可能会长达 4 分钟,其间服务器无法发送任何响应,但是 CPU 利用率保持很高,所有活动都在系统进程中。
  • 如何查看和设置:使用 get 命令来确定当前时间间隔,并使用 set 命令将时间间隔指定为 67.5 秒。例如,
    ndd -get /dev/tcp tcp_fin_wait_2_flush_interval
    ndd -set /dev/tcp tcp_fin_wait_2_flush_interval 67500
  • 缺省值:675000 毫秒
  • 建议值:67500 毫秒

3.TCP_KEEPALIVE_INTERVAL

  • 描述:“保持活动”包确保连接保持活动和已建立状态。
  • 如何查看或设置:使用 ndd 命令来确定当前值或设置该值。例如:
    ndd -set /dev/tcp tcp_keepalive_interval 300000 
  • 缺省值:7200000 毫秒
  • 建议值:15000 毫秒
  • 连接储备
    • 描述:当由于入局连接请求比率过高而导致连接故障时,请更改下列参数:
      ndd -get /dev/tcp tcp_conn_req_max_q 
      ndd -set /dev/tcp tcp_conn_req_max_q 8000
    • 缺省值:对于 Solaris 8 来说,缺省值是 128
    • 建议值:8000
  •  

    windows 系统

    TcpTimedWaitDelay 项确定在 TCP 释放已关闭的连接并重用其资源之前必须经过的时间。关闭和释放之间的这段间隔称为 TIME_WAIT 状态或 2MSL 状态。在此期间,可以重新打开连接,对客户端和服务器来说这比建立新连接的成本要低得多。

    如果减小此项的值,则允许 TCP 更快地释放已关闭的连接,从而为新连接提供更多的资源。但是,如果该值过小,则 TCP 可能会在连接完成之前释放连接资源,要求服务器使用其他资源重新建立连接。

    将 TcpTimedWaitDelay 注册表项设置为其默认值

    1. 打开注册表编辑器,如 Regedit.exe 或 Regedt32.exe。

    2. 导航到:

      HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

    3. 双击 TcpTimedWaitDelay,然后将“数值数据”<!---->字段设置为 60(十进制)。

    4. 关闭注册表编辑器,然后重新启动计算机。

    阅读(1294) | 评论(0) | 转发(0) |
    给主人留下些什么吧!~~