zoukankan      html  css  js  c++  java
  • netstat查看服务器并发访问数,ulimit修改

          查看apache当前并发访问数:
      netstat -an | grep ESTABLISHED | wc -l
      对比httpd.conf中MaxClients的数字差距多少。
      2、查看有多少个进程数:
      ps aux|grep httpd|wc -l
      3、可以使用如下参数查看数据
      server-status?auto
      #ps -ef|grep httpd|wc -l
      1388
      统计httpd进程数,连个请求会启动一个进程,使用于Apache服务器。
      表示Apache能够处理1388个并发请求,这个值Apache可根据负载情况自动调整。
      #netstat -nat|grep -i "80"|wc -l
      4341
      netstat -an会打印系统当前网络链接状态,而grep -i "80"是用来提取与80端口有关的连接的,wc -l进行连接数统计。
      最终返回的数字就是当前所有80端口的请求总数。
      #netstat -na|grep ESTABLISHED|wc -l
      376
      netstat -an会打印系统当前网络链接状态,而grep ESTABLISHED 提取出已建立连接的信息。 然后wc -l统计。
      最终返回的数字就是当前所有80端口的已建立连接的总数。
      netstat -nat||grep ESTABLISHED|wc - 可查看所有建立连接的详细记录
      查看Apache的并发请求数及其TCP连接状态:
      Linux命令:
      netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
      (这条语句是从 新浪互动社区事业部 新浪互动社区事业部技术总监王老大那儿获得的,非常不错)返回结果示例:
      LAST_ACK 5
      SYN_RECV 30
      ESTABLISHED 1597
      FIN_WAIT1 51
      FIN_WAIT2 504
      TIME_WAIT 1057
      其中的
      SYN_RECV表示正在等待处理的请求数;
      ESTABLISHED表示正常数据传输状态;
      TIME_WAIT表示处理完毕,等待超时结束的请求数。
      -----------------------------------------------------------------------------------------
      查看httpd进程数(即prefork模式下Apache能够处理的并发请求数):
      Linux命令:
      ps -ef | grep httpd | wc -l
      查看Apache的并发请求数及其TCP连接状态:
      Linux命令:
      netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
      返回结果示例:
      LAST_ACK 5
      SYN_RECV 30
      ESTABLISHED 1597
      FIN_WAIT1 51
      FIN_WAIT2 504
      TIME_WAIT 1057
      说明:
      SYN_RECV表示正在等待处理的请求数;
      ESTABLISHED表示正常数据传输状态;
      TIME_WAIT表示处理完毕,等待超时结束的请求数

      -----------------------------------------------------------------------------------------

      附:并发数大的时候需要修改ulimit,centos修改如下:

      ulimit -n 查看最大文件描述符数。

      vi /etc/security/limits.conf

      * hard nofile 40960

         * soft nofile 40960

      再在 /etc/pam.d/login  增加一行

      session    required     pam_limits.so

          ------------------------------------------------------------------------------------------

      

    Linux系统上默认的open files数目为1024, 有时应用程序会报Too many open files的错误,是因为open files 数目不够。

    我所用的Linux为CentOS 5.6

    修改方法: www.2cto.com

    (1)ulimit -HSn 102400

    这只是在当前终端有效,退出之后,open files 又变为默认值。

    (2)将ulimit -HSn 102400写到/etc/profile中,因为每次登录终端时,都会自动执行/etc/profile。

    (3)令修改open files的数值永久生效,则必须修改配置文件:/etc/security/limits.conf. 在这个文件后加上:

    * soft nofile 102400

    * hard nofile 102400

    这种方法需要重启机器才能生效。

    (4)为了让一个程序的open files数目扩大,可以在启动脚本前面加上(1)中的命令。当程序是一个daemon时,可能这种方法无效,没有终端了。

    PS:

    影响open files数值的还有一个内核参数file-max,这是Linuxt系统的总限制。可以通过如下文式查看:

    cat /proc/sys/fs/file-max

    或者

    sysctl -a | grep fs.file-max

    对于服务器可以采用如下方法修改file-max:

    (1)重启机器后恢复为默认值

    echo 34166 > /proc/sys/fs/file-max

    或者

    sysctl -w "fs.file-max=34166"

    (2)修改配置文件/etc/sysctl.conf, 在最后加上一行:

    fs.file-max = 34166

    然后重启机器后生效。以后永久生效

  • 相关阅读:
    noip模拟赛 钻石
    noip模拟赛 整除
    noip模拟赛 拼不出的数
    noip模拟赛 正方形
    noip模拟赛 财富
    noip模拟赛 a
    Java基础知识强化23:Java中数据类型转换(面试题)
    Java基础知识强化22:Java中数据类型转换
    Java基础知识强化21:Java中length、length()、size()区别
    MySQL(12):windows下解决mysql忘记密码
  • 原文地址:https://www.cnblogs.com/hojor/p/3246073.html
Copyright © 2011-2022 走看看