我要投搞

标签云

收藏小站

爱尚经典语录、名言、句子、散文、日志、唯美图片

当前位置:双彩网 > 执行状态 >

关于AJAX的执行状态判断

归档日期:07-05       文本归类:执行状态      文章编辑:爱尚语录

  网站页面有一个按钮当触发后执行Ajax,开始异步执行a.php后台程序。a.php执行时间较长需要一分多种才能够执行完成。

  我现在遇到这样一个问题,假如就我一个人打开这个网站触发了按钮,然后一分钟后当然就要到了自己想要的结果,但是假设有100个人甚至更多,同时打开了这个网站并同时触发按钮,程序运行当然是没问题的。不过这100个人触发的a.php都在做同样的工作,得到的也是同样的结果,显然是没必要的,是毫无意义的增加了服务器的压力。

  所以,我现在在想有没有一种方法可以当触发按钮时,先进行判断,如果a.php已经在执行了那么当前就return FALSE不要继续了。

  我本人想到了一个笨方法,即当a.php在执行时update数据库set remark字段为1(remark默认为0),当a.php执行完了后在最后再update数据库set remark为0,这样确实实现了我要的效果。但又遇到新的问题,在不用这种方法之前当Ajax a.php时因为是异步传输我可以任意刷新当前页,但当我按前面的方法处理后再刷新当前页就会假死直到a.php执行一分钟后才刷新成功。

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  展开全部首先声明一下,我不是做php的,但是这种情况在java里面也会遇到,你可以参照一下,我目前采取的办法如下:

  1、如果a.php处理的是全局不变的内容,则使用静态化方式将a.php的内容转换成*.html,在多次调用时,先判断转换成的文件是否存在,如果不存在进行生成,否则直接调用;

  2、如果a.php处理的内容时需要定期刷新的,则使用timer组件进行定时作业,其他部分采取与第一种相同方式即可;

本文链接:http://germworks.net/zhixingzhuangtai/280.html