PHP 解决对文件操作的高并发问题
2017-03-31 19:50
531 查看
解决方案:
对文件进行加锁时,设置一个超时时间。超时设置为1ms,如果这段时间内没有获得锁,就反复获得,直到获得对文件的操作权为止。如果超市限制已到,就必须马上退出,让出锁让其他进程进行操作。
示例代码:
对文件进行加锁时,设置一个超时时间。超时设置为1ms,如果这段时间内没有获得锁,就反复获得,直到获得对文件的操作权为止。如果超市限制已到,就必须马上退出,让出锁让其他进程进行操作。
示例代码:
if($fp = fopen($fileName, 'a')){ $startTime = microtime(); do{ $canWrite = flock($fp, LOCK_EX); }while((!$canWrite)&&((microtime()-$startTime)<1000)); if($canWrite){ fwrite($fp, $dataToSave); } fclose($fp); }
相关文章推荐
- PHP使用文件锁解决高并发问题示例
- php文件锁(进程锁)解决少量并发问题
- PHP使用文件锁解决高并发问题示例
- 如何解决php中并发读写文件冲突的问题
- php做了个弱统计,写入到文件中,引起并发问题,加锁解决
- PHP文件写入函数file_put_contents并发追加写入丢失内容问题解决方法
- PHP文件锁 解决并发问题
- php文件锁解决少量并发问题
- php中,高并发状态下文件的读写 (解决多线程同时读写一个文件的问题)
- PHP解决引用路径和重复引用文件已经其中的HTML代码的路径问题的终极解决方案
- 解决Vista文件操作缓慢问题:五大方案
- Ado.Net操作Excel文件数据常见问题及解决
- 解决php无法上传大文件问题
- javabean操作文件正确,但是Jsp调用javabean时文件路径出错问题解决之JavaBean访问本地文件实现路径无关实现方法
- Web网站缓存文件并发问题解决方案
- php上传文件大小限制问题的解决
- 解决PHP下载文件乱码问题
- SQL SERVER2000安装问题解决:以前的某个程序安装已在安装计算机上创建挂起的文件操作
- Ado.Net操作Excel文件数据常见问题及解决
- C#的文件操作及中文乱码问题的解决