crontab 和 supervisor
crontab
linux系统自带的工具,可以做定时任务,最小间隔是1分钟
配置crontab 命令
如果是以root用户编辑的,那么最后运行也是以root用户运行脚本文件
crontab -e
命令格式如下
* * * * * command
minute hour day month week command
- minute: 表示分钟,可以是从0到59之间的任何整数
- hour:表示小时,可以是从0到23之间的任何整数
- day:表示日期,可以是从1到31之间的任何整数
- month:表示月份,可以是从1到12之间的任何整数
- week:表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日
- command:要执行的命令,可以是系统命令,也可以是自己编写的脚本文件
#每15分钟运行一次脚本文件
*/15 * * * * php /path/cron.php
#每天10点运行一次命令
0 10 * * * php /path/cron.php
切换到www-data用户编写运行命令
crontab -u www-data -e
supervisor
是Python写的进程管理工具,如果进程挂掉,则可以自动启动进程
查看配置
echo_supervisord_conf
编写自己的supervisor配置文件
[program:time]
command=php /var/www/supervisor/log.php
stdout_logfile=/var/log/supervisor/time.log
user=www-data
startretries=3
redirect_stderr=true
autostart=true
autorestart=true
- program: 应用程序的唯一标识 用于管理应用程序
- command:要运行的命令,使用绝对命令
- stdout_logfile:日志文件
- user:以哪一个用户运行这个命令
- startretries:启动失败自动重试次数
- redirect_stderr:重定向输出的日志
- autostart:在 supervisord 启动的时候也自动启动
- autorestart:程序异常退出后自动重启
管理
直接shuru supervisorctl 可以进入管理界面
root@ubuntu:/var/log/supervisor# supervisorctl
time STARTING
supervisor>
错误
通过查看stdout_logfile配置的文件,可以查看日志
crontab 和 supervisor的更多相关文章
- Crontab定时启动Supervisor任务
1. Crontab介绍 crontab的语法规则格式: 代表意义 分钟 小时 日期 月份 周 命令 数字范围 0~59 0~23 1~31 1~12 0~7 需要执行的命令 周的数字为 0 或 7 ...
- apache(nginx)+django+virutalenv(virtualenvwrapper)+gunicorn+supervisor配置高效web环境
前言 django的调试模式配置简单,用于测试十分方便,但众所周知,这个只适合于调试,生产上运行效率十分低下. 后来考虑用nginx+uwsgi的模式进行,但之前配置过apache+wsgi的方式,感 ...
- Supervisor 安装与配置
Supervisor是一个进程监控程序. 满足的需求是:我现在有一个进程需要每时每刻不断的跑,但是这个进程又有可能由于各种原因有可能中断.当进程中断的时候我希望能自动重新启动它,此时,我就需要使用到了 ...
- linux 进程监控软件 supervisor
2017年8月21日 17:51:33 星期一 supervisor python写的, 用来监控进程是否启动, 之前监控进程是否启动, 没有就拉起的shell代码是写在crontab里的, 这个软件 ...
- supervisor 与 yii定时任务
https://www.jianshu.com/p/9abffc905645 https://www.cnblogs.com/ajianbeyourself/p/5534737.html https: ...
- 基于supervisor秒级Laravel定时任务
背景介绍 公司需要实现X分钟内每隔Y秒轮训某个接口,Linux自带的crontab貌似只精确到分钟,虽然可以到精确到秒,但是并不满足需求. 选型 公司项目都是 基于 Laravel 框架,所以这个没得 ...
- 基于Laravel框架下使用守护进程supervisor实现定时任务(毫秒)
本篇文章给大家带来的内容是关于基于Laravel框架下使用守护进程supervisor实现定时任务(毫秒),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 公司需要实现X分钟内每隔Y秒 ...
- Supervisor操作相关的进程
Supervisor是用Python开发的一个客户机/服务器系统,允许用户监视和控制UNIX类操作系统上的多个进程. 功能:用于监听.启动.停止.重启一个或多个进程. 当Supervisor管理的进程 ...
- asp.net core 负载均衡集群搭建(centos7+nginx+supervisor+kestrel)
概述 本文目的是搭建三台asp.net core 集群, 并配上 nginx做负载均衡 首先准备要运行的源码 http://pan.baidu.com/s/1c20x0bA 准备三台服务器(或则虚 ...
随机推荐
- P1218 过路费
奋斗了两天,终于写过了这道题...... 这道题不仅要求最短路,还要加上路径上最大的点权: 先用结构体记录点的序号和点的值这是毋庸置疑的:再用另外一个数组来记录当前点权也是可以理解的,毕竟后面要排序: ...
- NOIp2005 过河【dp+离散化】By cellur925
题目传送门 $30pts$ 状态和转移都比较好想:设$f[i]$表示跳到$i$位置,踩到的最小石子数.转移方程也很明了,为$f[i]$=$min${$f[i-j]$),,这个位置有石子时答案再加1,$ ...
- 害死人不偿命的(3n+1)猜想 (15)
#include <iostream> #include <algorithm> using namespace std; int main(){ int n; while ( ...
- Codeforces Round #321 (Div. 2) A, B, C, D, E
580A. Kefa and First Steps 题目链接: A. Kefa and First Steps 题意描述: 给出一个序列,求最长不降连续子序列多长? 解题思路: 水题,签到 代码: ...
- 用 Fleck 实现 websocket 通信
<html lang="en"> <head> <meta charset="utf-8"> <title>rf ...
- Vue nextTick 理解
官网解释: 将回调延迟到下次 DOM 更新循环之后执行.在修改数据之后立即使用它,然后等待 DOM 更新.它跟全局方法 Vue.nextTick 一样,不同的是回调的 this 自动绑定到调用它的实例 ...
- 关于c#的结构体struct与class的区别
C# 结构体 struct C#中结构类型和类类型在语法上非常相似,他们都是一种数据结构,都可以包括数据成员和方法成员. 结构和类的区别: 1.结构是值类型,它在栈中分配空间:而类是引用类型,它在堆中 ...
- go获取当前执行的位置程序
func getCurrentPath() string { _, filename, _, ok := runtime.Caller(1) var cwdPath string if ok { cw ...
- maven编译报错 -source 1.5 中不支持 lambda(或diamond) 表达式,编码 UTF-8 的不可映射字符
在用maven编译项目是由于项目中用了jdk 1.8, 编译是报错 -source 1.5 中不支持 lambda 表达式. 错误原因: Maven Compiler 插件默认会加 -source ...
- [ SNOI 2013 ] Quare
Description 题目链接 求一张无向带权图的边双连通生成子图的最小代价. Solution 核心的思路是,一个点双连通分量肯定是一堆环的并. 考虑增量地构造这个边双连通图,每次把一个环并进去, ...