IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 服务器检测之查看外网访问请求量以及并发数量所对应的IP -> 正文阅读

[网络协议]服务器检测之查看外网访问请求量以及并发数量所对应的IP

一、前言
经常在线上环境下,一种特别常见的情况:服务器突然CPU暴增、机器特别卡顿、导致机器崩掉,这种情况影响面积极大。

产生这样情况众多,还有可能会有如此情况,服务器中的mq挂掉了,导致队列中已有的worker无法消化,在短时间内终端又过来大量的请求,直接将入口机器的外网带宽打满,服务器压力巨大,系统直接无法正常使用,直接产生的问题就是:

二、查询服务器中TCP连接数和并发量的相关指令
1、常见的TCP指令:
对不同的IP进行连接数统计
1.1、对TCP连接的五种状态连接数分别进行统计

netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

1.2、连接数与等待数量

netstat -n | awk '/^tcp/ {++S[$NF]};END {for(a in S) print a, S[a]}'
#ESTABLISHED 897
#TIME_WAIT 39

1.3、常见TCP连接查询

netstat -n | awk '/^tcp/ {++state[$NF]}; END {for(key in state) print key,"\t",state[key]}'  
netstat -n | awk '/^tcp/ {++arr[$NF]};END {for(k in arr) print k,"\t",arr[k]}'  
netstat -n |awk '/^tcp/ {print $NF}'|sort|uniq -c|sort -rn  
netstat -ant | awk '{print $NF}' | grep -v '[a-z]' | sort | uniq -c

1.4、查看80端口连接数最多的20个IP:

netstat -anlp|grep 80|grep tcp|awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -nr|head -n20

1.5、查找较多time_wait连接:

netstat -n|grep TIME_WAIT|awk '{print $5}'|sort|uniq -c|sort -rn|head -n20

1.6、查找较多的SYN连接:

netstat -an | grep SYN | awk '{print $5}' | awk -F: '{print $1}' | sort | uniq -c | sort -nr | more

1.7、查看当前并发访问数:

netstat -an | grep ESTABLISHED | wc -l

1.8、查看所有连接请求:

netstat -tn 2>/dev/null

注:但是只要established的,则grep “ESTABLISHED”:

netstat -tn | grep ESTABLISHED 2>/dev/null

1.9、查看访问某一ip的所有外部连接IP(数量从多到少):

netstat -nt | grep 121.41.30.149:80 | awk '{print $5}' | awk -F: '{print ($1>$4?$1:$4)}' | sort | uniq -c | sort -nr | head

1.10、根据端口查找进程:

netstat -ntlp | grep 80 | awk '{print $7}' | cut -d/ -f1

2、根据nginx的访问日志判断
在网站部署的目录下,在当我们对nginx进行部署后,通常会在logs文件夹用于存放一些日志文件。我们可以根据其中的access.log文件查看一些访问记录。

2.1、查看访问记录,从1000行开始到3000:

cat access.log |head -n 3000|tail -n 1000

2.2、查看访问记录,从1000行开始,显示200行:

cat access.log |tail -n +1000 |head -n 200

2.3、根据访问IP统计UV:

awk '{print $1}'  access.log|sort | uniq -c |wc -l

2.4、统计访问URL统计PV:

awk '{print $7}' access.log|wc -l

2.5、查询访问最频繁的URL:

awk '{print $7}' access.log|sort | uniq -c |sort -n -k 1 -r|more

2.6、查询访问最频繁的IP:

awk '{print $1}' access.log|sort | uniq -c |sort -n -k 1 -r|more

2.7、通过日志查看含有send的url,统计ip地址的总连接数:

cat access.log | grep "send" | awk '{print $1}' | sort | uniq -c | sort -nr

2.8、通过日志查看当天指定ip访问次数过的url和访问次数:

cat access.log | grep "222.132.90.94" | awk '{print $7}' | sort | uniq -c | sort -nr
  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-08-24 15:54:17  更:2021-08-24 15:55:02 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年9日历 -2024/9/28 6:38:59-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码