タグ

Performanceに関するkarukanのブックマーク (5)

  • さいきんの Rails サービスを高速化をしてみた - 2nd life (移転しました)

    先日のももクロハッカソンで出会った wantedly を作ってる仲さんが と言ってたので、面白そうなので wantedly を速くしてみました。 wantedly ちなみにデータが数百万オーダーもなさそうなのに、どのページもログインすると2-5秒ぐらいかかっていたので、確実に速くできそうだなぁという感覚はやる前からありました。 アプリケーションサイドのチューニング 初心者*1にありがちな問題として SQL に適切にインデックス張ってない キャッシュすべき場所をキャッシュしていない 無駄なデータを引きすぎてる ことがよくあります。ので順に実装を見ていきました。 SQLに適切なインデックスを張ってない 張ってありました!びっくり!\(^o^)/ キャッシュすべき場所をキャッシュしていない Facebook API を利用したアプリケーションなんですが、ユーザのデータの取得を毎回馬鹿正直に HT

    さいきんの Rails サービスを高速化をしてみた - 2nd life (移転しました)
  • #isucon で優勝してきました - 酒日記 はてな支店

    なんでもありのWebアプリケーション高速化バトル、#isucon に会社の同僚 @Songmu @sugyan と3人で、fujiwara組として参戦してきました。結果、幸いにも優勝を勝ち取ることが出来ました。 こんなに楽しいイベントを企画、運営していただいた Livedoor の皆様、当にありがとうございます!! さて、ざっとチューニングした経過などを記録しておきます。 [追記] もっと詳しいレポートを @Songmu が上げているのでそちらもご覧ください おそらくはそれさえも平凡な日々: #isucon で優勝させてもらってきました [さらに追記] #isucon ではどんなことを考えながら作業していたか - 酒日記 はてな支店 自分でももう少し詳しく振り返りエントリ書きました。 まず説明を聞いて、環境を作るところから。IPアドレスでは作業がしにくいし事故も起こりそうなので、host

    #isucon で優勝してきました - 酒日記 はてな支店
  • 二流プログラマの三流な日常: ソースを変えずに高速化する(.NET Framework)

    納期がギリギリでも高速化しなくてはならないことがあります。 そんな時に役に立つ、ソースを変更せずにコンパイル時や実行時の設定だけで高速化する方法を紹介します。 以下、効果が高く重要な順に行きます。 使用するアセンブリ(DLL)のロード時間を高速化する 呼び出すアセンブリ(DLL)が2個以上あるなら、ベースアドレスを変更する 必要とするアセンブリの検索をプローブに頼っていませんか?プローブによる呼び出しはかなり低速です。「.NET Frameworkアプリは起動が異常に遅い」などという人は、大抵、この辺の知識か、JITに対する理解が足りていません。厳密名をつけ、アセンブリをGACに導入することを検討してください。 ベースアドレスの変更はWindows開発の常識です。解説は他のサイトに任せます。 次にCPUが2個以上あるサーバプログラムでは以下の事も検討すべきです。 ガベージコレクタを変更して

  • 試験前に不安な気持ちを書き出すことでパフォーマンスが向上、「本番で実力を出せる」ように

    今週末には2011年度の大学入試センター試験が実施されますが、試験前になると「手が回ってない範囲から出題されたらどうしよう」「ド忘れしたらどうしよう」「この試験で失敗したら浪人だ」「浪人したら彼女に振られるかも」などと次から次へと心配してしまい、勉強が手に着かず事はのどを通らず夜も眠れない……というような人もいるかもしれません。 そういった不安を感じやすく緊張する場面に弱い、「番で実力を発揮できない」タイプの人は、試験直前にその不安な気持ちを紙に書き出すことで、不安が解消され成績が向上するそうです。 詳細は以下から。Writing about worries eases anxiety and improves test performance | The University of Chicago シカゴ大学の心理学者Sian L. Beilock准教授らの行った実験により、試験に関

    試験前に不安な気持ちを書き出すことでパフォーマンスが向上、「本番で実力を出せる」ように
  • CSSセレクタの高速化の話し - Webtech Walker

    続・ハイパフォーマンスWebサイトを読んでCSSセレクタの高速化の話しが面白かった(というか全然知らなくてちょっとびびった)ので紹介します。 セレクタは右から左に解釈される これは正直知らなくて、結構衝撃でした。 #foo .bar {} これはなんとなく#fooを探して、その中の.barを探している気がしてたんですけど、実は.barを探して、その親要素に#fooがあるかを探すそうです。なので特に#fooが必要なければ .bar {} と書いたほうが高速だということ。 また、以下の様に要素名で指定すると、その要素を全て探します。 #foo a {} これは一度a要素を全て探すので、できればaにclassをふって #foo .anchor {} とするほうが高速のようです。(#fooをとるとより高速) 特にユニバーサルセレクタなどは、 #foo * {} とすると、全ての要素の親要素に対して

    CSSセレクタの高速化の話し - Webtech Walker
  • 1