タグ

パフォーマンスに関するkakkyz81のブックマーク (5)

  • http://dev.rakusui.jp/diary/?date=20070827

  • naoyaのはてなダイアリー - Linuxのページキャッシュ

    世間では PHP が、Perl が、と盛り上がっているようですが空気を読まずまたカーネルの話です。今回はページキャッシュについて。 /dev/shm に参照系DBを持っていくと I/O 負荷が激減した件(当たり前だけど) - drk7jp で、ディスク上にあったファイルを /dev/shm (tmpfs) に移したら I/O 待ちがなくなって負荷がさがった、ということなんですがおそらくこれは tmpfs に置く必要はないかなと思います。Linux (に限らず他の OS もそうですが) にはディスクの内容を一度読んだらそれはカーネルがキャッシュして、二度目以降はメモリから読む機構 = ページキャッシュがあります。tmpfs にデータを載せることができた、ということは物理メモリの容量に収まるだけのデータサイズかと思うので、放っておけば該当のファイルの内容すべてがメモリ上にキャッシュされて io

    naoyaのはてなダイアリー - Linuxのページキャッシュ
    kakkyz81
    kakkyz81 2007/05/22
    DBのサイズがメモリのサイズに収まるとOSがよろしくやってくれてIOの時間が下がって幸せだよ
  • Young risk taker.: [Rails] Unit::TestかRSpecのSpecファイルを実行しボトルネックとなるクエリを書き出すSlowQueryLoggerを作った

    久々に面白いモノを作った。 SlowQueryLogger RailsではActiveRecordを利用してガンガン富豪プログラムを書きがちなため、適切にインデクスを張っていないとすぐに重たくなるので、Rails中で発行された遅いクエリをロギングするプログラムを作った。 ActiveRecordの参照系クエリを発行するメソッドをEXPLAINにより実行解析情報を取得しロギングしてから通常の参照クエリを発行するように拡張し、Rails付属のUnit::TestのfunctionalテストまたはRSpecのコントローラーのSpecファイルを実行する。最終的には、filesortか一時テーブルを使用しているクエリがログファイルに書き出される。 つまり、functional testを定義したファイルかRSpecのcontrollerのスペックファイルがあれば特に何も用意する必要はない。 現在My

  • ActiveRecordには最適化する余地がたくさんある。

    UIEJでもisamu136さんと盛り上がっていたのですが、ActiveRecordが富豪過ぎる件。えぐちさんも同じことを書いているのを発見。 ActiveRecordのupdateが富豪過ぎる件 AR#saveやAR#update_attributesはレコード数が増えるとインデクスの更新がバカにならない。:stringでは無駄に可変長カラムを使用する。replace構文の使用デフォルト値をなるべく設定する。 複数のDB間の差異を埋めるための抽象化で犠牲になっている部分も多くて、個人的にはほぼMySQLのみを使用するのでMySQLに特化させるAR拡張が欲しいところ。 参考 MySQLの最適化 rakuto Lead engineer for several automotive products at Core Team, UIEvolution Inc in Kirkland. Her

    kakkyz81
    kakkyz81 2007/03/27
    多数のDBに対応するために富豪になっちゃってる
  • 第7回Rails勉強会@東京 - walf443's blog

    第7回Rails勉強会@東京へ行ってきました。 第2回以来の久々の参加でした。何人か顔を覚えてくださっていた方もいらっしゃって前回よりも緊張せずに済みました。 パフォーマンスに関してのページを読む。 セッションの提案が滞っていたので一応他の人の意見を聞いてみようかなと印刷してきていたやつをセッションとして提案してしまいました。 InfoQ - Tracking change and innovation in the enterprise software development community http://www.infoq.com/articles/Rails-Performance Railsアプリで遅くなりがちな点について次のようなものがあげられています choosing a slow session container doing things on a per reque

    第7回Rails勉強会@東京 - walf443's blog
  • 1