欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

jquery-ajax - php+ajax异步非阻断方式使用疑问?

程序员文章站 2022-05-27 08:39:20
...
我使用php+ajax进行数据更新操作
前景
php+redis+ajax
redis 不设置过期时间
php+redis 前台读取数据,用户批量提交大量数据(或者发现系统展示数据出错时)后,要手动点击更新按钮使用PHP+redis+ajax 后台进行异步更新(更新操作在1-3分钟)
现在遇到的问题 是当用户点击了那个提交按钮后
Apache的进程通过异步方式执行更新操作,但是由于更新操作时间(1-3分钟)较长,会导致Apache对后续的操作没有反应,现在服务器系统使用的是windows,暂时没找到一种后台持续进行的队列的方式,所以不知道该如何解决这种情况,让用户点击更新按钮后,也能够到其他页面查看数据。

回复内容:

我使用php+ajax进行数据更新操作
前景
php+redis+ajax
redis 不设置过期时间
php+redis 前台读取数据,用户批量提交大量数据(或者发现系统展示数据出错时)后,要手动点击更新按钮使用PHP+redis+ajax 后台进行异步更新(更新操作在1-3分钟)
现在遇到的问题 是当用户点击了那个提交按钮后
Apache的进程通过异步方式执行更新操作,但是由于更新操作时间(1-3分钟)较长,会导致Apache对后续的操作没有反应,现在服务器系统使用的是windows,暂时没找到一种后台持续进行的队列的方式,所以不知道该如何解决这种情况,让用户点击更新按钮后,也能够到其他页面查看数据。

这个经过pycon的朋友解决了,是session文件锁的问题
在使用文件方式存储session时,因为文件锁被占用导致后面打开的页面会出现等待的情况也就是阻塞了

当在公共的入口文件中使用

ini_set('session.save_handler','redis');
ini_set('session.save_path','tcp://192.168.1.123:11211');

使用session的redis存储方式就ok了