Linux查看日志文件写入速度的4种方法

Linux查看日志文件写入速度的4种方法,第1张

有时,我们需要查看某个文件的增长速度,如日志文件,以此来感受系统的负载情况,因为一般情况下,日志写入越快,说明系统负载越重。

本文就来介绍下Linux中查看日志增长速度的几种方法,如下:

首先要介绍的是dd,因为dd命令几乎所有主流发行版都自带,无需额外安装,如下:

如上,使用 tail -F 获取新写入的数据,然后用管道将数据交给dd,dd将数据拷贝到 /dev/null ,其中 status=progress 是用来显示拷贝速度的,可见,我们日志的写入速度是 471 kB/s 。

pv命令可以看做是带进度的cp,如下:

原理与dd类似,不过命令换成了pv。

由于日志数据都是程序(如java)写入的,而在如下的伪文件中,存放着程序打开的文件信息,如下:

于是定期的读取这个offset就可以知道文件的写入速度了,这也是cv命令的实现原理,如下:

通过写一个小脚本,定期观察文件大小,也可查看文件写入速度,如下:

通过watch再加上观察,也能大致看出速度,如下:

其实转念一想,如果我们在某个函数中打上日志,然后通过grep过滤出此日志,然后我们只要计算每秒输出的日志行数,这岂不就是函数执行的QPS了!

这里可以通过 151/15 计算出QPS是10,由于没有超过1000,所以看到的是0.0kB/s,如果使用pv命令,会更简单一些,如下:

linux3000个文件大概传30秒左右!

1.己知24秒在公网上传完了一个2077M的文件,平均速度高达87M/s,传输完毕后在两端校验MD5,发现文件完全一致。

2.用nc传输有两个特点:

➤速度快

➤传输简单,不需要登录对方服务器,不需要验证信息。

3.nc进度显示

若你文件实在太大,想看到传输进度,用PV

yum install epel-release -y

yum install pv -y

cat CentOS-6.9-x86_64-bin-DVD2.iso |pv -b | nc 45.55.0.86 9999

4.传输目录

4.1接收端:

nc -l 45.55.0.86 9999 | pv -b >home.tar.gz

4.2发送端:

tar -czf - /home/ | nc 45.55.0.86 9999

4.3中转文件

A、B、C三台主机,A美国,C昌南,C只能访问到B,不能直接访问A,B和AC互通。C要怎么才能拿到A上的文件呢?

C上执行:

nc -l 9999 >google_file.txt

B上执行:

nc -l 9999 | nc (C的外网IP) 9999

A上执行:

nc (B的外网IP) 9999 <google_file.txt

这个跟linux 没有太大关系,需要提高硬盘或存储速度,例如更换转速更快的sas硬盘,使用缓存大的raid卡,做成raid10。添加ssd硬盘作为分层或缓存存储或全用ssd。这些都是本地改善,如果这些还不能满足需要,就要使用存储(分高中低端)同时使用以上raid和分层存储技术和更快的传输线路如光纤,sas 12GB传输新标准支持的存储。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/7409678.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-05
下一篇2023-04-05

发表评论

登录后才能评论

评论列表(0条)

    保存