php后台服务防止交叉执行

sudo mkdir /alidata/www/office/orderlog/
sudo chown www:www /alidata/www/office/orderlog/ -R
sudo chmod 777 /alidata/www/office/orderlog/ -R
sudo vim /alidata/www/office/allocate_order.sh

#!/bin/bash
count=`ps aux|grep ‘hh/auto-process-order‘|grep -v ‘grep‘|wc -l`
if [ 0 == ${count} ];then
        orderlog_dir=/alidata/www/office/orderlog/`date +%y%m%d`/
        orderlog_file=${orderlog_dir}`date +%H`
        if [ ! -d ${orderlog_dir} ]; then
                mkdir -p ${orderlog_dir}
        fi
        if [ ! -f ${orderlog_file} ]; then
                touch ${orderlog_file}
        fi
        /alidata/server/php/bin/php /alidata/www/office/yii hh/auto-process-order >> ${orderlog_file}
fi

sudo chown www:www /alidata/www/office/allocate_order.sh

crontab -e
*/1 * * * * /alidata/www/office/allocate_order.sh

时间: 2024-07-30 01:10:03

php后台服务防止交叉执行的相关文章

Android四大组件——Service后台服务、前台服务、IntentService、跨进程服务、无障碍服务、系统服务

Service后台服务.前台服务.IntentService.跨进程服务.无障碍服务.系统服务 本篇文章包括以下内容: 前言 Service的简介 后台服务 不可交互的后台服务 可交互的后台服务 混合性交互的后台服务 前台服务 IntentService AIDL跨进程服务 AccessibilityService无障碍服务 系统服务 部分源码下载 前言 作为四大组件之一的Service类,是面试和笔试的必备关卡,我把我所学到的东西总结了一遍,相信你看了之后你会对Service娓娓道来,在以后遇

跟我学习dubbo-使用Maven构建Dubbo服务的可执行jar包(4)

Dubbo服务的运行方式: 1.使用Servlet容器运行(Tomcat.Jetty等)----不可取 缺点:增加复杂性(端口.管理) 浪费资源(内存) 官方:服务容器是一个standalone的启动程序,因为后台服务不需要Tomcat或JBoss等Web容器的功能,如果硬要用Web容器去加载服务提供方,增加复杂性,也浪费资源. 2.自建Main方法类来运行(Spring容器) ----不建议(本地调试可用) 缺点: Dobbo本身提供的高级特性没用上 自已编写启动类可能会有缺陷 官方:服务容器

Android Services (后台服务)

一.简介 服务是可以在后台执行长时间运行的应用程序组件,它不提供用户界面. 另一个应用程序组件可以启动一个服务,并且即使用户切换到另一个应用程序,它仍然在后台运行. 另外,组件可以绑定到一个服务来与它进行交互,甚至执行进程间通信(IPC). 例如,服务可以从后台处理网络交易,播放音乐,执行文件I / O或与内容提供商交互. 这些是三种不同类型的服务: Scheduled(计划的服务)--- Android 5.0后可用当在Android 5.0(API级别21)中引入的诸如JobSchedule

Android官方开发文档Training系列课程中文版:后台服务之IntentService的创建

原文地址:http://android.xsoftlab.net/training/run-background-service/index.html 引言 除非特别指定,否则所有的操作都是在UI线程中执行的.不过这会引起问题,因为长时间的耗时操作会妨碍UI线程的运行.这会惹恼用户,并可能会引起系统错误.为了避免这样的情况出现,Android为此提供了一些类,可以使这些耗时操作放在单独的线程中执行.这里用到最多的就是IntentService了. 这节课主要学习如何实现IntentService

Android-Service (基本知识,生命周期,实例-startService 启动的服务音乐播放器后台服务播放)

1.回顾 上篇 学习了 Android的四大组件之一 BroadCastReceiver 的 相关知识 2.重点 (1)Service 分类 (2)Service 的生命周期 (3)Service 标签 下的属性 (4)什么时候使用BindService 和 startService ? (5)实例 - 通过Service 服务 实现 音乐播放器 后台播放 3.Service 分类 3.1 按照地点分 (1)本地服务 服务依附在主进程上而不是独立的进程,这样在一定程度上节约了资源,另外Local

将java打jar包成linux后台服务service

将java打jar包成linux后台服务service 第一步:将java程序打成jar包 build.gradle配置文件中加spring-boot-gradle-plugin插件,具体配置如下(配置完成后刷新gradle项目) plugins {   id 'org.springframework.boot' version '1.5.4.RELEASE' } springBoot {   executable = true } 打包,在build.gradle所在的目录下,运行如下命令 g

服务 IntentService 前台服务 定时后台服务

Activity public class MainActivity extends ListActivity {     private int intentNumber = 0;     @Override     protected void onCreate(Bundle savedInstanceState) {         super.onCreate(savedInstanceState);         List<String> mData = new ArrayList

【原创】Linux后台服务相关问题总结

千言万语,不如实验来的直接... 基于sleep的小实验 首先通过实验直观感受一下后台服务的运行状况(请注意,前方高能,相关概念在更后面才有解释). 在命令行上以不同方式执行 sleep 确定登录 shell 和伪终端. [[email protected] ~]# ps ajxf PPID PID PGID SID TTY TPGID STAT UID TIME COMMAND ... 0 1 1 1 ? -1 Ss 0 0:02 /sbin/init ... 1 1654 1654 1654

Android中如何像 360 一样优雅的杀死后台服务而不启动

Android中,虽然有很多方法(API或者shell命令)杀死后台`service`,但是仍然有很多程序几秒内再次启动,导致无法真正的杀死.这里主要着重介绍如何像 360 一样杀死Android后台服务,而不会再次启动. 一.已知的 kill 后台应用程序的方法 android.os.Process.killProcess(pid); activityManager.killBackgroundProcesses(pkgName); kill -9 pid 这三种方法都可以“杀死”后台应用程序