如何避免打破高清?我有一个在ubuntu机器上运行的bash脚本,使用这个元代码:
bash1.sh
while(true)
run bash2.sh
sleep 60 seconds
done
bash2.sh:
if(directory is empty): exit
process file
delete file
目录是网络共享的,而计算机没有做任何其他事情。每天一次新文件到达并被处理。 (我知道bash1.sh可以替换为watch)。我担心的是 bash1.sh 每次都在阅读 bash2.sh - 这可以通过只有一个脚本来避免!并且 bash2.sh 每次都在读取同一目录。该目录是否真的从高清读取,或者是ubuntu以某种方式在RAM中缓存目录? - 只有当事情发生变化时才会阅读?它是一个问题,它是每次读取HD的同一个地方,还是无关紧要,因为HD已经在旋转?如果HD从不睡觉,那么如果我将循环时间设置为仅一秒钟,这是否重要?
也许这个目录可能是一个纯粹的ram目录 - 我该怎么做? - 或者是否有一些简单的方法来检查是否有东西通过网络到达而没有读取目录?
答案 0 :(得分:1)
每六十秒读一次文件或目录 过度使用。
说真的,不要担心。
如果您真的担心,可以重新考虑检测文件的策略。
例如,您是否真的需要在六十秒内知道该文件已到达?它可以在白天的任何时间到达吗?可以认为一天的某些部分不太可能吗?
使用这样的信息,您可以调整检查的时间以适应。如果文件应该在下午4点之后交付,那么在此之前不要检查它。
在下午4点到下午5点之间每60秒检查一次,然后每隔十分钟检查一次。
这些都是可以做出的与业务相关的决定,但我仍然认为这是不必要的。如果您经常备份磁盘(如果需要快速备份,则备用硬件),您不应该丢失任何东西。
事实上,如果你真的偏执,你可以为此专用整个机器,其唯一目的是通过FTP接收文件,当它到达时,将它发送到你的真实处理盒。
在该计算机上放置 nothing else并具有热备用(完全相同的软件,IP地址等但断电),这样,如果失败,则可以在几分钟内激活备用数据库。
然后真正的处理机器每天只写一次 - 这不太可能影响磁盘的使用寿命。
根据我的喜好,这可能太偏执,但它表明有办法减轻几乎所有问题。