Dan*_*ler 6 linux performance io
该tac命令(cat逆转)可以用来读取向后文件,就像cat读它的ROM开始。我想知道,这是多么有效。它是否必须从头开始读取整个文件,然后在到达末尾时反转一些内部缓冲区?
我计划将它用于一些经常被称为监控脚本的脚本,该脚本需要检查大小为数百兆字节的文件的最后 n 行。但是,我不希望这会导致沉重的 I/O 负载或通过一遍又一遍地读取文件(大约每分钟一次左右)用其他无用的信息填充缓存空间。
任何人都可以阐明该命令的效率吗?
如果使用得当,tac效率相当tail——一次读取 8K 块,从后面寻找。
除其他事项外,“正确使用”需要在您的文件上直接、可查找的句柄:
tac yourfile # this works fine
Run Code Online (Sandbox Code Playgroud)
...或者...
tac <yourfile # this also works fine
Run Code Online (Sandbox Code Playgroud)
不是
# DON'T DO THIS:
# this forces tac to copy "yourfile" to a new temporary file, then uses its regular
# algorithm on that file.
cat yourfile | tac
Run Code Online (Sandbox Code Playgroud)
也就是说,与使用logstash可以输入索引存储和/或生成事件以供 CEP 引擎进行实时分析的工具或类似工具相比,我认为重复运行这种性质的工具是一种非常低效的日志扫描方式例如Esper或Apache Flink。
| 归档时间: |
|
| 查看次数: |
1729 次 |
| 最近记录: |