Heim  >  Artikel  >  Backend-Entwicklung  >  php程序随机记录mysql rand()造成CPU 100%的解决方法

php程序随机记录mysql rand()造成CPU 100%的解决方法

WBOY
WBOYOriginal
2016-07-25 09:03:39918Durchsuche
  1. $idlist='';
  2. for($i=1;$iif($i==1){
  3. $idlist=mt_rand(3,25216);
  4. }
  5. else{
  6. $idlist=$idlist.','.mt_rand(3,25216);
  7. }
  8. }
  9. $query="select * from table where id in ($idlist) LIMIT 0,10";
  10. ?>
复制代码

原理分析:产生一组随机ID,然后检索这一组ID对应的记录。 经过这样优化,页面打开速度明显快了很多,CPU占用率也小到几乎为0。 顺便用这个思路把sql server数据库应用中的站点也优化了一番。 速度比较: 用rand()取10条随机记录要400多毫秒,而用上面的方法则只要0.6毫秒左右,效率提高了不是一点点啊。

您可能感兴趣的文章: php获取CPU使用情况的代码 php中使用proc/loadavg监控CPU的平均负载 php记录服务器负载、内存、cpu状态的代码 php页面缓存的例子(减经cpu与mysql负担) php获取cpu与内存使用情况的代码一例 php获取linux服务器CPU、内存、硬盘使用率的实现代码 php获取计算机唯一标识信息(cpu,网卡,MAC地址)的代码 PHP-CGI 进程 CPU 100% 与 file_get_contents 函数的关系 php获取CPU使用信息



Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn