您现在的位置是:主页 > news > 网站多久才能做起来/广东新闻今日大件事
网站多久才能做起来/广东新闻今日大件事
admin2025/6/24 14:56:38【news】
简介网站多久才能做起来,广东新闻今日大件事,算命网站做竞价赚钱,怎么在公安局网站上做企业备案往期热门文章:1、Nginx面试40问 2、如何设计 API 接口,实现统一格式返回? 3、竟然有一半的人不知道 for 与 foreach 的区别??? 4、5 款顶级 Docker GUI 工具!免费又好用 5、解决 IDEA 占用大量 …
往期热门文章:
1、Nginx面试40问
2、如何设计 API 接口,实现统一格式返回?
3、竟然有一半的人不知道 for 与 foreach 的区别???
4、5 款顶级 Docker GUI 工具!免费又好用
5、解决 IDEA 占用大量 CPU 导致的卡顿问题!
来源:blog.csdn.net/weixin_44648216
Part1一个错误操作
在生产环境中, 假如我们要清空一个正在写入的文件, 比如 “清空 2020020501.log” 我见过许多同学会这样操作:
rm -f 2020020501.log && touch 2020020501.log
Part2为什么这个操作错误?
这样操作后会发现 2020020501.log 不再有新的写入了,或者说那些本来好好往 2020020501.log 写着日志的进程,并不能往新 touch 的 2020020501.log 写入日志:
tail -f 2020020501.log.
此时执行 lsof | grep delete | grep 2020020501.log
还会发现,那些写日志的进程, 还 hold 着旧的 2020020501.log 文件句柄没释放:
testpro 27168 root 4u REG 252,17 124055696 54801882 /testlog/2020020501.log (deleted)
testpro 27169 root 4u REG 252,17 124055696 54801882 /testlog/2020020501.log (deleted)
testpro2 30035 root 4u REG 252,17 124064390 54801882 /testlog/2020020501.log (deleted)
testpro2 30035 30045 root 4u REG 252,17 124064390 54801882 /testlog/2020020501.log (deleted)
······
Part3怎么解决这个错误操作带来的问题?
为了让新 touch 的 2020020501.log 能继续写入log, 需要重启所有正在写入 2020020501.log 的进程。在这个测试 case 里面,需要重启 testpro 和 testpro2 。
由此可见, 如果不小心错误地将一个被许多进程读写中的热文件 rm
删除了, 那就需要重启所有相关进程,才能恢复正常读写。这就非常麻烦了,因此强烈不建议通过 rm
删除进程读写中的热文件。
Part4正确的操作是怎样的?
> 2020020501.log
或者
echo > 2020020501.log
最近热文阅读:
1、Nginx面试40问
2、如何设计 API 接口,实现统一格式返回?
3、竟然有一半的人不知道 for 与 foreach 的区别???
4、5 款顶级 Docker GUI 工具!免费又好用
5、解决 IDEA 占用大量 CPU 导致的卡顿问题!
6、JDK 18 / Java 18 GA 来了
7、图解:订单系统从0到1设计思路
8、@Transactional 注解失效的3种原因及解决办法
9、14 个写 Java 的习惯
10、Google 工作十年后,我选择离开!
关注公众号,你想要的Java都在这里