欢迎光临
我们一直在努力

如何让云服务器定时跑程序?一招轻松搞定!

随着互联网以及各类应用的高速发展,越来越多的数据处理与系统托管需求落在了云 computing 上。无论是企业应用还是个人网站,广泛运用的即时通讯,音视频处理,大数据分析等等应用,都需要高性能的服务器支持。然而,大型应用程序的定时或者定期运行就对云计算服务商提出了更高的要求。在本篇博客中,我将介绍一种简单易行的云服务器程序定时运行方法。

先来了解一下云、VPS和SSH吧。

– 云计算:云计算是利用网络技术进行“远程”处理和连接的业务模式,不需要物理上的资源固定,依靠互联网进行通讯。特点是弹性扩展,快速响应,高效稳定,付费模式更为灵活。
– VPS:全称是Virtual Private Server,即虚拟专用服务器。是一种基于虚拟化技术的服务器,可以模拟出一台独立的服务器供用户使用。VPS供应商提供的都是允许用于独立托管的 VPS,用户可以对所购买的 VPS 进行操作和配置。对于个人开发者和小型企业,购买 VPS 经济实惠。
– SSH: SSH是Secure Shell的缩写,是一种加密网络协议。该协议由IETF的网络工作组制定,其目的是为了保护网络服务的安全传输。在采用SSH协议后,网络传输的数据,包括密码在内,都将更安全。

如何让云服务器定时跑程序?

在Linux系统中,使用Cron可以完成任务自动化,实现长时间运行脚本的需求。Cron是一个后台服务,它可以在预定时刻,按照预定的频率自动执行shell脚本;在日常操作中,通过编辑Cron文件,指定任务运行的时间、间隔、日程等,即可实现按时自动运行指定代码的效果。

首先,我们需要远程登录到自己的服务器(云服务器或VPS)中。一般而言,需要用到SSH协议,即使用自己的用户名及密码登入服务器,具体的操作流程如下:

1.在MAC或Linux系统中,用终端登录远程服务器的命令为:

ssh -p port user@host

其中,port 是指 SSH 服务监听的端口,user 是指 SSH 登录的用户名,host 是指需要 SSH 连接的IP地址或主机名。这些参数根据你所使用的 SSH 服务软件、服务器使用的操作系统、以及你的账户登录信息而可能不同。

2. 成功连接到服务器后输入密码即可进入服务器

3. 然后,进入编辑 Cron 文件的命令为:

crontab –e

打开 crontab 文件

*/5 * * * * /path/to/your/script

只需要在文件最后添加一段类似上面的内容,就可以实现每5分钟定时运行你所写的代码了。

而如果你希望可以自行监控定时运行的代码,则可以为Cron增加邮件监控功能,这样你就可以知道任务是否正常运行,有没有异常,抛出了哪一步错误,也方便二次排查与修复。

#指定发件方地址,格式为:发件人邮箱地址,多个发件人之间用,隔开,最好不要有空格
MAIL_FROM=”你的邮箱地址”

#指定收件方地址,格式同发件人
MAIL_TO=”发送邮件的邮箱地址”

#指定邮件的主题
MAIL_SUBJECT=”脚本性能监控报警”

#定义邮件正文,最后通过echo传入mail命令中
MAIL_BODY=”内容格式说明:\n时间:$(cws_date)\n状态:失败\n错误信息:此处描述具体错误信息”
MAIL_CMD=”/usr/bin/mailx -r ${MAIL_FROM} -s ${MAIL_SUBJECT} ${MAIL_TO}” #mailx绝对路径

1 * * * * command 2>> /tmp/error.log;status=$?;if [ $status -ne 0 ];then echo -e ${MAIL_BODY} |${MAIL_CMD};fi

其中 MAIL_BODY、MAIL_CMD 和 MAIL_TO 这几个参数需要你修改为你自己的邮箱地址和信息。

总结

通过 Cron,你可以轻松地实现任务的自动化,定时运行你的代码。并通过邮件监控功能,及时获得任务运行的状态,通过代码和日志追查异常,对服务器进行性能分析和优化。 实际应用的过程中,Cron的具体用法还有很多细节点,需要仔细阅读相关指南去研究,最好还是需要在有经验的朋友或者工程师的指导下进行操作,以确保服务的准确性和严谨性。

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。