我有一个脚本,可以从 Web 服务中提取一些数据并填充 mysql 数据库。这个想法是每分钟运行一次,所以我添加了一个 cron 作业来执行脚本。
但是,我希望能够在不修改我的 crontab 的情况下偶尔暂停和重新开始工作。
实现这一目标的最佳实践是什么?或者我真的不应该使用 crontab 来安排我想偶尔暂停的事情吗?
我正在考虑设置全局变量并在脚本内部检查的实现。但我想我会先寻找更合适的解决方案。越简单越好——我对脚本和红宝石都是新手。
如果我是你,我的脚本会查看一个静态开关,就像你对全局变量所说的那样,但测试文件是否存在而不是全局变量。这对我来说似乎很干净。
另一种解决方案是让服务不使用 crontab,而是每分钟调用一次您的脚本。该服务将与/etc/init.d
or 中的其他服务(/etc/rc.d
取决于您的发行版)类似,并具有start
,stop
和restart
命令作为其他服务。
这两种解决方案可以混合使用:
所以在你的地方,我会选择 1。