墨迹哥 发表于 2013-05-31 14:20

请教PHP关闭浏览器后程序继续运行的问题

目前有两个问题比较麻烦,所以请教下各位高手。。。
1.定时任务的问题(这个我估计用crontab应该能完成?)
2.就是关闭浏览器继续运行问题。
(手上是一些小PERL工具,目标是点击按钮后程序运行,希望关闭浏览器后程序不会停止)
有什么方法能使关闭浏览器后程序不会停止呢?

satrun7 发表于 2013-05-31 15:32

是要用户关闭后,请求的php脚本继续运行,还是要php调用perl的脚本继续运行?

墨迹哥 发表于 2013-05-31 16:34

回复 2# satrun7


    目前是这样的,底层小工具是PERL写的,PHP在运行PERL,我希望的是关闭浏览器后PERL还在运行,重新打开页面后,php显示程序还在运行的状态

satrun7 发表于 2013-05-31 16:53

回复 3# 墨迹哥

你需求是要异步队列。
1. 服务端要做队列记录,记录进程完成情况;
2. 记录用户操作(例如使用cookie),当用户重新请求新http请求时,php获取用户信息,返回服务端请求完成的情况;

墨迹哥 发表于 2013-05-31 16:55

回复 4# satrun7


    好像很难。。。我能知道你QQ吗?

satrun7 发表于 2013-05-31 17:11

回复 5# 墨迹哥


    http://www.ibm.com/developerworks/cn/opensource/os-php-gearman/

建议你看看这里 , php要实现异步队列比较麻烦 , 如果是用Win环境更是雪上加霜。

墨迹哥 发表于 2013-06-01 00:39

回复 6# satrun7


    这东西真的很高科技。。。不太懂。我的是LINUX。。我考虑下新开个进程把它写死在服务器上把。。

maochanglu 发表于 2013-06-01 17:06

ignore_user_abort — Set whether a client disconnect should abort script execution

墨迹哥 发表于 2013-06-02 00:43

回复 8# maochanglu


    我试过,貌似加在页面无效?

seoyou 发表于 2013-06-04 18:28

回复 1# 墨迹哥
1) crontab
2) 建立一个守护进程,用php通过memcache或者队列通知

   
页: [1]
查看完整版本: 请教PHP关闭浏览器后程序继续运行的问题