解决php 随机记录MySQL rand()造成CPU 100%实现方法
内容摘要
这篇文章主要为大家详细介绍了解决php 随机记录MySQL rand()造成CPU 100%实现方法,具有一定的参考价值,可以用来参考一下。
对此感兴趣的朋友,看看idc笔记做的技术笔记!百度查
对此感兴趣的朋友,看看idc笔记做的技术笔记!百度查
文章正文
这篇文章主要为大家详细介绍了解决php 随机记录MySQL rand()造成CPU 100%实现方法,具有一定的参考价值,可以用来参考一下。
对此感兴趣的朋友,看看idc笔记做的技术笔记!
百度查阅了一些资料,再结合自己的一些经验,采用以下解决办法:代码如下:
$idlist='';
for($i=1;$i<=20;$i++){
if($i==1){
$idlist=mt_rand(3,25216);
}
else{
$idlist=$idlist.','.mt_rand(3,25216);
}
}
$query="select * from table where id in ($idlist) LIMIT 0,10";
原理其实很简单,就是产生一组随机ID,然后检索这一组ID对应的记录,经过这样优化,页面打开速度明显快了很多,CPU占用率也小到几乎为0,呵呵~顺便用这个思路把sqlserver站点也优化了一下!速度比较:用rand()取10条随机记录要400多毫秒,而用上面的方法只要0.6毫秒左右,差别太大了!!!
注:关于解决php 随机记录MySQL rand()造成CPU 100%实现方法的内容就先介绍到这里,更多相关文章的可以留意
代码注释