2015年10月6日のブックマーク (3件)

  • MySQLの超遅いSELECTが劇的に早くなった | X->A->O

    CakePHPはよく触っていたものの、MySQLについてあまり知らなかったんですが、大規模なデータベースを扱ってみようと思い立ちいろいろ試行錯誤しています。 で、ついさっき感動したのが、40万件のレコードを扱ってるテーブルに簡単なSELECT分を投げて返ってくる時間がなんと5秒もかかっていて、なんじゃこりゃ?って首をかしげてたんですが、INDEXひとつで劇的に早くなったこと。 40万件が大規模かそうでないかはこの際おいておいて、INDEXのつけ方次第でこんなにも速度に変化があるのかと涙が出そうになった。 最初の激遅いテーブルは簡単に書くとこんな具合。 CREATE TABLE IF NOT EXISTS `shops` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL, `status

    lightwill
    lightwill 2015/10/06
    ALTER TABLE `shops` ADD INDEX ( `id` , `status` ) ; とALTER TABLE `shops` ADD INDEX ( `status` , `id`) ;で劇的にスピードが違うそうだ
  • 2009-09-02

    これは高級感より割高感… とあるサイトの検索結果を取得してごにょごにょするプログラムを書いていたら、検索結果の件数によって結果が違うことに気付いた。 どうやらそのサイトの場合、結果が1件だけの時は検索結果リストではなく詳細ページに自動的に飛ばされる仕様らしく、リダイレクトするからかcurlでのデータ取得が空っぽになってしまう。I'm Feeling Lucky? 常に2件以上の結果を期待するわけにもいかないし、どうしようかと色々検索してみたら、Mac OS Xのコマンド「curl」にはオプションで-Lとするとリダイレクト先にも飛んで情報取得してくれるらしい。だったらPHPcurlにもオプションにそういう設定があるのではないかと、オプションリストを見ていたら、ありました。 CURLOPT_FOLLOWLOCATION TRUE を設定すると、サーバが HTTP ヘッダの一部として送ってくる

    2009-09-02
    lightwill
    lightwill 2015/10/06
    “CURLOPT_FOLLOWLOCATION”
  • jQuery高速化!処理速度を10倍上げるテクニック20選

    Aircraft manuevers during an airpower deomonstration. / Official U.S. Navy Imagery Javascriputを簡単に書けるようにしてくれるライブラリのjQueryですが、使い方をちょっと変えるだけで、パフォーマンスに大きく差がでます。ハイスペックPCでは分かりづらいかもしれませんが、スペックの低いPCやモバイルではWebページの表示速度が遅くすぐに閉じられるかもしれません。 Webページがたった1秒高速化するだけでECサイトなんか、売上が10%向上した事例もあります。そこで、jQuery高速化のポイントや方法をここにまとめておきます。 jQueryの最新バージョンを使う 図1 jQueryのバージョンによる速度 https://jsperf.com/speed-comparison-of-jquery-vers

    jQuery高速化!処理速度を10倍上げるテクニック20選
    lightwill
    lightwill 2015/10/06