登录
首页 >  Golang >  Go问答

循环执行以及定时任务

来源:stackoverflow

时间:2024-03-09 11:27:25 402浏览 收藏

今日不肯埋头,明日何以抬头!每日一句努力自己的话哈哈~哈喽,今天我将给大家带来一篇《循环执行以及定时任务》,主要内容是讲解等等,感兴趣的朋友可以收藏或者有更好的建议在评论提出,我都会认真看的!大家一起进步,一起学习!

问题内容

我有一个上传服务,需要每 5 分钟运行一次,并且它肯定会在 5 分钟内完成,因此永远不会有两个并行会话。

想知道运行它的一个好策略是什么,要么将其安排为主机上的 cron 作业,要么启动一个具有无限循环的 go 程序,该程序执行程序并休眠(Golang:实现 cron / 在特定位置执行任务时间)


解决方案


如果您的任务是...

  • 在 Unix 上
  • 独立
  • 定期
  • 启动时间可接受

cron 比只为一项服务滚动您自己的调度程序更好。它将保证该进程始终在正确的时间运行并具有基本的错误报告。如果您的无限循环出现错误,则无需添加看门狗,cron 将在 5 分钟内再次运行该过程。

如果 cron 不够,请在推出自己的版本之前先查看其他 job schedulers

这些都是著名的遗言。我建议添加某种形式的锁定。例如,将 PID to a file 写入 /var/run 并检查该进程是否正在运行。甚至还有一个 little pidfile library for Go

终于介绍完啦!小伙伴们,这篇关于《循环执行以及定时任务》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布Golang相关知识,快来关注吧!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>