一个PHP程序,同一时刻被请求多次,怎么让它只运行一次?

转载 2016年05月24日 11:47:35
问题:   
一个PHP程序,访问运行后会发邮件。
另外有一个监控程序会每隔15分钟自动去监控访问一次,但这监控程序是每次同时产生四次访问,所以每次就会同时收到4封邮件。
我想四次访问只运行一次就行了,但监控程序动不了必须是同时四次,所以只能修改PHP程序。
这四次访问是几乎同时产生的,试过让程序写在数据库里去判断第一次访问有效,都没用,不知道还有什么办法?



答案:

 

session加sleep(随机变量)可以解决.不过可能是走弯路了.只给你一个思想 
<?php

session_start
给定一个随机数,具体范围自己定
sleep(随机数)//不宜过大
if(!$_SESSION[ ])
写session
else
return就好了

相关文章推荐

php中curl同时发送多个请求curl_multi函数集的用法

一、引言这段时间比较忙,已经很久没有写博客了。今天我就来聊聊我关于curl_multi_*函数集的使用心得,关于http请求的问题。当我们用户php发起一个http请求的时候。我们会首先想到用什么?没...

某个php页面在同一时间只能由一个用户执行,其它用户排队,有办法吗? - PHP进阶讨论

可以用session_set_save_handler(open,close,read,write,destory,gc)解决:先通过一个变量标志此页面是否有用户在执行,当用户请求这个页面的时间,就打...

PHP是单线程的,如何应对大量的http访问?

http://bbs.csdn.net/topics/390778072

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

PHP源代码解析:一次请求的开始与结束

PHP开始执行以后会经过两个主要的阶段: 处理请求之前的开始阶段请求之后的结束阶段 开始阶段有两个过程: 第一个过程是模块初始化阶段(MINIT), 在整个SAPI生命周期内(例如Apache启...

php对一次请求处理过程或生命周期详解

简介   先看看下面这个过程: 我们从未手动开启过PHP的相关进程,它是随着Apache的启动而运行的;PHP通过mod_php5.so模块和Apache相连(具体说来是SAPI,即服务器应用程序编...
  • hsd2012
  • hsd2012
  • 2016年03月26日 20:44
  • 3205

php原子性操作测试,有效防止多进程对同一段代码的重复执行

测试目的: 现在有一个需求,目的是为每次操作生成一个唯一ID,而且这个ID是连续性的,在上次ID上自增。 在不借助MYSQL的自增字段类型的情况下,需要用PHP写了如下代码: $sql="sele...
  • qzmrock
  • qzmrock
  • 2014年03月17日 10:17
  • 3008

php类操作符 -> 连续访问多个方法

class a{ private $b = 0; public function c( $Num = 0 ) { $this->b = $Num; return $th...

给定A, B两个整数,不使用除法和取模运算,求A/B的商和余数

给定A, B两个整数,不使用除法和取模运算,求A/B的商和余数。 1.   最基本的算法是,从小到大遍历: for (i = 2 to A -1)          if (i * B > A)...

利用K-means聚类算法根据经纬度坐标对中国省市进行聚类

K-means聚类算法是一种非层次聚类算法,在最小误差的基础上将数据划分了特定的类,类间利用距离作为相似度指标,两个向量之间的距离越小,其相似度就越高。程序读取全国省市经纬度坐标,然后根据经纬度坐标进...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:一个PHP程序,同一时刻被请求多次,怎么让它只运行一次?
举报原因:
原因补充:

(最多只允许输入30个字)