目前测试环境:centos7系统,Apache服务器,php5.6,tp3.2框架在conference控制器上写两个方法test1, test2,打开aa浏览器,先访问test1,新建标签页立即访问test2,此时test2一直转圈等待不输出任何东西.但是如果打开bb浏览器,访问test2,则可以立即输出(与在aa打开时间相差5s),请问这是什么原因?如何能让aa浏览器先访问test1方法后,立即打开test2也可以正常输出? public function test()
{ echo "haha";
sleep(60);
} public function test2()
{ die('aaa');
}
2 回答
慕田峪7331174
TA贡献1828条经验 获得超13个赞
tp3 自动开启 session。默认情况下,session_start()
后,会生成一个 session
锁,所以同一个会话下,第二个请求会被阻塞。
如果希望不被阻塞,有 2 种方法
修改配置文件,关闭自动开启 session,然后需要用到再开启,用完就关闭
return array( //'配置项'=>'配置值' 'SESSION_AUTO_START' =>false);
session_start(); $_SESSION['name'] = 'chengqm'; session_write_close();
session 存储方式改为 redis,好像 redis session 暂时不支持锁
- 2 回答
- 0 关注
- 397 浏览
添加回答
举报
0/150
提交
取消