[最好语言]PHP下的fastcgi使用fastcgi_finish_request真的提高页面响应速度无副作用?与session锁的一个相关性问题的探讨性性业余非正式研究。

jackxiang 2015-10-23 16:38 | |
背景:提高了性能,任何事情都可以辩证的看,稳定性于鲁棒性,光的波粒二象性,凡事都有两面性,如戴眼镜虽然可以装丝文,但是雨中漫步的时候容易撞电线杆;抽烟可以让身上有女生喜欢的淡淡烟草味,但是会危害周围人的健康;醉酒虽然可以让人精神愉悦,但是会说出真话,这些都是我的亲身体验.......写不下去了。

wintiongXX - sng<wintiXX@gmail.com>  14:39:09
php里哪个函数,是可以在php执行过程中直接响应nginx,但是让php继续执行?
cody(2501385XX)  14:40:44
        fastcgi_finish_request();
wintiongXX - sng<wintiXX@gmail.com>  14:41:22
我就记得有这个函数,一时想不起来了
@cody
X哥chen(X哥)<blXXX.c@163.com>  14:45:09
用fastcgi_finish_request要注意一下,
如果fastcgi_finish_request"之后", 到整个程序完成的时间还很久或有其他的阻塞调用,
当前进程是无法处理请求的, 可能导致各种问题
wintiongXX - sng<wintiXX@gmail.com>  14:46:23
这个知道的,其实总体而言进程耗时没变化,只是有些东西没必要让用户等你
erikYXXX-TEG(744366XXX)  14:48:32
使用这个函数不能使用file存储session(使用其他存储也需要关掉session 锁)。不然用户A第一次持有session访问,如果后续操作有耗时操作,用户的session会被锁住,导致后续访问卡住。
问苍天个猫(13427XXX)  15:01:35
可以提前session_write_close啊
erikYXXX-TEG(744366XXX)  15:01:59
也是可以的。
——————扯淡开始———————
JackX-回忆未来有甚用(372647XXX)  16:19:27
请问各位弟兄们,这两个函数放在一块有啥区别:
1.PHP ignore_user_abort() 函数, ignore_user_abort(true); php关闭浏览器还能运行函数。
2.        fastcgi_finish_request();
都解决了啥么子问题???
JackX-回忆未来有甚用(372647XXX)  16:24:06
我问的问题就没一个人接一个?还是认为我不是搞PHPer的啊
问题太肤浅?
allendai<snowheart.dai@gmail.com>  16:24:56
没用过。。
JackX-回忆未来有甚用(372647XXX)  16:27:31
我只是好奇,哈哈~
你说这些鸡肋功能开发出来有毛用啊,还好天峰说没有之一,哈哈。
Ran-韩最好语言(128112XX)  16:29:13
因为PHP设计之初只有 请求开始到请求结束 这段生命周期,后面的它控制不了。各种函数的出现就是为了弥补这个缺陷。
JackX-回忆未来有甚用(372647XXX)  16:29:16
PHP ignore_user_abort() 函数,我用来做一些导表由PHP从A到B做下逻辑导入数据库,浏览器上访问下容易超时,于是用到。
至于这个: fastcgi_finish_request(); 我也是听x哥在说,于是问下,都用来干嘛子?上传视频后-》转码->入库->推前台,第二三四都可以连接起来???
Ran-韩最好语言(128112XX)  16:29:28
使用消息队列异步处理才是正途。
erikYXXX-TEG(744366XXX)  16:29:54
php session lock主要是各个session促出模块实现自己实现的锁。默认的session 存储是文件,实现是在打开之前flock session文件。如果选择memcached存储session,锁是在memcache扩展里面实现的。
如果自己实现SessionHandler接口存储,可以选择不实现锁。
fastcgi_finish_request 可以提前把结果返回给nginx,之后脚本还可以保留上下文执行一些任务,可以算是伪异步。最好还是使用MQ来异步处理任务。
allendai<snowheart.dai@gmail.com>  16:30:06
……用浏览器调用导入程序
这就是你的不专业了
JackX-回忆未来有甚用(372647XXX)  16:31:05
我觉得也是,所以我觉得兄弟们都是专业的,
可为何发明这个鸡肋功能,有点玩的感觉哟。

结论:
X哥chen(X哥)<blXXX.c@163.com>  16:38:59
+1
异步化才是正途

作者:jackxiang@向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除
地址:https://jackxiang.com/post/8306/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!


最后编辑: jackxiang 编辑于2015-10-23 17:30
评论列表
发表评论

昵称

网址

电邮

打开HTML 打开UBB 打开表情 隐藏 记住我 [登入] [注册]