本文实例讲述了php计划任务之验证是否有多个进程调用同一个job的方法。分享给大家供大家参考,具体如下:
在使用计划任务的时候,公司有一次出现过2个进程跑同一个计划任务的情况,导致很多job都执行了2次,为了预防这种情况需要对linux的进程做一个限制,同一时间如果有进程在调用这个计划任务,那么就不允许另一个进程再进行调用了,下面是具体的代码。
// $pro 方法名字 private function _verifyPsAux($pro) { $arrProcess = array( $pro => "/usr/local/www/scrm/public/index.php /records/job/{$pro}" ); $pidNumber = 0; foreach ($arrProcess as $key => $value) { exec("ps aux|grep '$key'", $return); $isRunning = false; // 指令未执行 foreach ($return as $k => $v) { if(! strrpos($v, $value)) continue; // preg_match('/\d+:\d+ +\/usr/iu', $v, $match); // if (! isset($match[0])) continue; $isRunning = true; $pidNumber++; } // 如果当前进程存在,则终止 if ($isRunning && $pidNumber > 1) { echo '[_' . date('Y-m-d H:i:s') . "_] 进程正在执行中\r\n"; exit(); } } }
希望本文所述对大家php程序设计有所帮助。
问题内容: 我是Spring-boot(版本1.3.6)和Quartz的新手,我想知道使用Spring- scheduler 进行任务之间有什么区别: 和石英方式: 在代码中: 和sheduler: Quartz是否提供了更灵活的方式来定义Jobs,Triggers和Scheduler,或者Spring Scheduler还有其他更好的方法? 问题答案: Spring Scheduler是一个抽象
我们有一个Spring Boot应用程序,并有计划的任务。 我们希望在多个服务器上部署我们的应用程序,因此将有多个应用程序实例。 如何将 Spring 配置为仅在指定的服务器上运行计划任务?
问题内容: 我想验证以下行为的方法如下。 在我的@Test类中,我希望做这样的事情来验证是否使用“ exception.message”和再次使用“ exception.detail”进行了调用 但是Mockito抱怨如下 我如何告诉Mockito检查两个值? 问题答案: 进一步的阅读使我尝试使用ArgumentCaptors和以下作品,尽管比我想要的更为冗长。
本文向大家介绍php计划任务之ignore_user_abort函数实现方法,包括了php计划任务之ignore_user_abort函数实现方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了php计划任务之ignore_user_abort函数实现方法。分享给大家供大家参考。具体分析如下: PHP 不会检测到用户是否已断开连接,直到尝试向客户机发送信息为止,简单地使用 echo 语句无
我正在寻找一个与多个OidcClients进行多个服务调用的quarkus反应项目样本? 例如:DemoProject希望调用服务A、B、C、D。DemoProject使用了以grant类型作为密码的keycloak授权。服务A有OidcClientA,服务B有OidcClientB,服务C有OidcClientC,服务D有Oidcclientd。我们如何简单地将OidcClient注入到特定的服
几天来,我一直在探索Apache Flink,我对任务槽的概念有些怀疑。虽然有人问了几个问题,但有一点我不明白。 我正在使用一个toy应用程序进行测试,运行一个本地集群。我已禁用操作员链接 我从文档中知道插槽允许内存隔离而不是CPU隔离。阅读文档,任务槽似乎是一个Java线程。 1)当我以并行度=1部署我的应用程序时,所有运算符的子任务都部署在同一个插槽中。但是,如果我从的方法打印当前线程ID,我