我有一个更大的查询表单 mysql 的页面,结果可能超过 2MB。因为我的服务器内存不够(我应该给mysql安排内存以加快查询时间),所以我放弃了memcached。相反,它是一个txt文件。
这种情况如何锁定文件?如果文件被锁定,则只读取,如果文件未被锁定,则先写入再读取。谢谢。
if((time()-filemtime(filename)) > 60){
//mysql_query; query time less than 1.5 seconds
if(ex_lock){ // if file is lock, only read
file_get_contents($filename);
}else{ // if file isn't lock, first write then read
file_put_contents($filename, $query_contents);//some file size could be 2mb
file_get_contents($filename);
}
}