PHP プログラムが mysql rand() をランダムに記録し、CPU 100% の解決策を引き起こす

WBOY
リリース: 2016-07-25 09:03:39
オリジナル
915 人が閲覧しました
  1. $idlist='';
  2. for($i=1;$i<=20;$i++){
  3. if($i==1){
  4. $idlist=mt_rand( 3,25216);
  5. }
  6. else{
  7. $idlist=$idlist.','.mt_rand(3,25216);
  8. }
  9. }
  10. $query="select * ($idlist) の ID が含まれるテーブルから LIMIT 0 ,10";
  11. ?>
コードをコピー

原理分析: ランダムな ID のセットを生成し、この ID のセットに対応するレコードを取得します。 このような最適化後は、ページを開く速度が大幅に向上し、CPU 使用率がほぼ 0 に減少します。 ちなみに、このアイデアは SQL サーバー データベース アプリケーションでサイトを最適化するために使用されます。 速度比較: rand() を使用して 10 個のランダム レコードを取得するには 400 ミリ秒以上かかりますが、上記の方法を使用するとわずか 0.6 ミリ秒しかかかりません。効率は少しも向上しません。

興味があるかもしれない記事: CPU使用率を取得するためのphpコード PHPでproc/loadavgを使用してCPUの平均負荷を監視します サーバーの負荷、メモリ、CPUステータスを記録するためのphpコード PHPページのキャッシュ例(CPUやmysqlの負担軽減) CPUとメモリの使用量を取得するためのPHPコードの例 LinuxサーバーのCPU、メモリ、ハードディスクの使用量を取得するためのphp実装コード コンピュータの一意の識別情報(CPU、ネットワークカード、MACアドレス)を取得するためのphpコード PHP-CGI処理CPU100%とfile_get_contents関数の関係 phpはCPU使用率情報を取得します



ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート