如果我写 'vital signal' 来检查 python 代码是 运行,SSD 是否不健康?
Is it unhealthy for SSD if I write 'vital signal' to check a python code is running?
我正在构建的一个 python 程序被用来死掉,原因不明。我无法找出原因,所以我的解决方法是添加几行,每次执行程序中的某一行时将时间写入 'vitality' 文件,大约每 0.1 秒发生一次。
一个单独的脚本每 1 秒读取一次 'vitality' 文件,当生命体征没有更新时,比如说 10 秒,脚本会终止程序并重新启动它。
到目前为止,这个解决方法在解决最初的问题上效果很好,但现在我很担心 SSD 是否会因此而降级。
每 0.1 秒向文件写入 10 位 unixtimestamp 对 SSD 健康的影响可以忽略不计,还是会快速降低 SSD 性能?
这样做会降低 SSD 的性能并随着时间的推移将其毁坏。
在我上一份工作中,SSD健康工具(smartctl)显示我们集群产品中的15块SSD磨损很快,寿命仅剩几个月。该团队发现第三方软件包 (etcd) 每秒将少量数据同步到 SSD 上的文件系统。并且每次同步至少写入一个完整的 16K 块。幸运的是,问题发现得足够早,我们可以在软件更新中对其进行修补,以免造成太多客户 returns.
将'vitality'文件写到别处。它可能在像 /var/run/user/ 这样的 tmpfs 上。或者使用不同的生命力机制; supervisord 之类的东西可以管理你的任务,运行 健康检查并在失败时重新启动它。
我正在构建的一个 python 程序被用来死掉,原因不明。我无法找出原因,所以我的解决方法是添加几行,每次执行程序中的某一行时将时间写入 'vitality' 文件,大约每 0.1 秒发生一次。
一个单独的脚本每 1 秒读取一次 'vitality' 文件,当生命体征没有更新时,比如说 10 秒,脚本会终止程序并重新启动它。
到目前为止,这个解决方法在解决最初的问题上效果很好,但现在我很担心 SSD 是否会因此而降级。
每 0.1 秒向文件写入 10 位 unixtimestamp 对 SSD 健康的影响可以忽略不计,还是会快速降低 SSD 性能?
这样做会降低 SSD 的性能并随着时间的推移将其毁坏。
在我上一份工作中,SSD健康工具(smartctl)显示我们集群产品中的15块SSD磨损很快,寿命仅剩几个月。该团队发现第三方软件包 (etcd) 每秒将少量数据同步到 SSD 上的文件系统。并且每次同步至少写入一个完整的 16K 块。幸运的是,问题发现得足够早,我们可以在软件更新中对其进行修补,以免造成太多客户 returns.
将'vitality'文件写到别处。它可能在像 /var/run/user/ 这样的 tmpfs 上。或者使用不同的生命力机制; supervisord 之类的东西可以管理你的任务,运行 健康检查并在失败时重新启动它。