定时任务的两种方式

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/keyuquan/article/details/78191948

定时任务的两种方式

方式一:定时任务 并 打印日志 并 在后台运行

#1.定时任务
30 0 * * *  nohup  sh /home/hduser/projs/gamepublish_performance.sh

2.gamepublish_performance.sh 脚本:
#!/bin/sh
cd /tmp
today=$(date --date="0 day ago" +%Y-%m-%d)
yesterday=$(date --date="1 day ago" +%Y-%m-%d)
/home/hduser/spark/spark-1.6.1/bin/spark-submit \
--master yarn \
--executor-memory 2g \
--jars /home/hduser/spark/spark-1.6.1/lib/spark-assembly-1.6.1-hadoop2.3.0.jar,/home/hduser/spark/spark-1.6.1/lib/spark-examples-1.6.1-hadoop2.3.0.jar,/home/hduser/spark/spark-1.6.1/lib/mysql-connector-java-5.1.32-bin.jar,/home/hduser/spark/spark-1.6.1/lib/spark-streaming-kafka_2.10-1.6.0.jar,/home/hduser/spark/spark-1.6.1/lib/spark-1.6.1-yarn-shuffle.jar,/home/hduser/redis-3.2.4/lib/jedis-2.9.0.jar,/home/hduser/redis-3.2.4/lib/commons-pool2-2.4.2.jar \
--class com.xiaopeng.bi.gamepublish.GamePublishPerformance \
/home/hduser/projs/xiaopeng_bi_performance.jar $yesterday first >> /home/hduser/projs/logs/GamePublishPerformance.log 2>&1

3.定时任务和非定时任务脚本的区别

定时任务将日志打入某个目录后缀  2>&1
非定时任务将日志打入某个目录后缀 &

非定时任务的脚本
#!/bin/sh
cd /tmp
today=$(date --date="0 day ago" +%Y-%m-%d)
yesterday=$(date --date="1 day ago" +%Y-%m-%d)
nohup /home/hduser/spark/spark-1.6.1/bin/spark-submit \
--master yarn \
--executor-memory 2g \
--jars /home/hduser/spark/spark-1.6.1/lib/spark-assembly-1.6.1-hadoop2.3.0.jar,/home/hduser/spark/spark-1.6.1/lib/spark-examples-1.6.1-hadoop2.3.0.jar,/home/hduser/spark/spark-1.6.1/lib/mysql-connector-java-5.1.32-bin.jar,/home/hduser/spark/spark-1.6.1/lib/spark-streaming-kafka_2.10-1.6.0.jar,/home/hduser/spark/spark-1.6.1/lib/spark-1.6.1-yarn-shuffle.jar,/home/hduser/redis-3.2.4/lib/jedis-2.9.0.jar,/home/hduser/redis-3.2.4/lib/commons-pool2-2.4.2.jar \
--class com.xiaopeng.bi.gamepublish.GamePublishPerformance \
/home/hduser/projs/xiaopeng_bi_performance.jar $yesterday first >> /home/hduser/projs/logs/GamePublishPerformance.log &


方式二:定时任务 并 打印日志 不在后台运行
#聚合渠道游戏数据统计(bi)
35 4 * * * sh /home/hduser/projs/CenturionCommonSdk.sh >> /home/hduser/projs/logs/CenturionCommonSdkOffLine.log 2>&1
非定时任务直接执行  sh /home/hduser/projs/CenturionCommonSdk.sh >> /home/hduser/projs/logs/CenturionCommonSdkOffLine.log &

猜你喜欢

转载自blog.csdn.net/keyuquan/article/details/78191948
今日推荐