タグ

developmentとperformanceに関するpuchibanのブックマーク (4)

  • 漢(オトコ)のコンピュータ道: MySQLを高速化する10の方法

    ちょっとキャッチ−なタイトルをつけてしまったが、今日は独断と偏見でMySQLを高速化する方法を10個紹介しよう。MySQLサーバをチューニングするときや初期導入する場合などに参考にしてもらいたい。 1. バッファを増やす、または減らす チューニングの基中の基であるが、適切なバッファサイズを設定することはパフォーマンスチューニングの要である。主なバッファは次の通り。 innodb_buffer_pool_size・・・InnoDBだけを利用する場合は空きメモリの7〜8割程度を割り当てる最も重要なバッファである。余談だが、実際にはここで割り当てた値の5〜10%ぐらいを多めにメモリを使うので注意が必要だ。 key_buffer_size・・・MyISAMだけを利用する場合は、空きメモリの3割程度を割り当てるといい。残りはファイルシステムのキャッシュ用に残しておこう。 sort_buffer_

    漢(オトコ)のコンピュータ道: MySQLを高速化する10の方法
  • 1人で稼ぐ日記 | MySQL:1台しかない環境でエセ負荷分散

    MySQLのネタ。 1台しかない環境でエセ負荷分散を行う。 MySQLで負荷分散を考えたとき、 1台目にマスターのDBサーバー、 2台目以降をスレーブのDBサーバーとして用いる。 マスターは更新系のみのSQL文を、 スレーブは参照系のみのSQL文を投げる。 こんな負荷分散を1台のサーバーで行う必要が出てきた。 現在1台でやっていて、ディスクIOが追いつかずに捜し求めた結果、下の形で落ち着いた。 1つのテーブルでインデックスを含めたサイズが 30MB〜100MBほどで安定している、という条件があるのですが かなり負荷下がります。 ※上記サイズは搭載メモリサイズによって変わります -------------------------- ■やりかた 負荷が高いテーブルをAとする 1:Aと同じテーブル構成で、エンジンをMEMORY(he

  • MySQL負荷分散のまとめ - Life on the net

    はてぶで人気エントリーになっていた、 http://kokoromo.jugem.cc/?eid=195 [MySQL:1台しかない環境で負荷分散] これは負荷分散=スケールアウトというよりは一台でスケールアップしてしのぐ手段を書いてい。 だから負荷分散という言葉は必ずしも正しくないのだが、一つのテーブルへの付加集中を分散させるという事なのだろう。 そこで何パターンかあるMySQLの負荷分散を簡単にまとめてみる。 1. 富豪的分散 商用のクラスター製品を使う。 最近はMySQL専門のクラスター製品が出てきている。 http://www.continuent.jp/pro.html なんかは良いかなと思う。 長所: プログラム側ではクラスタ状態を何の意識もせず、一つのターゲットに対してクエリーを発行すれば良い。 ターゲットが複数台ある事は意識する事は無い。 不具合があるノードに生じた場合、他

    MySQL負荷分散のまとめ - Life on the net
  • PHPコーディングに関する最適化TIPS 2009:phpspot開発日誌

    PHP micro-optimization tips | Alex @ Net PHPコーディングに関する最適化TIPS というのがまとまっていましたのでご紹介。 元記事では、micro-optimization ということで、これらを直すのももちろんだけど、ロジックを直す方がパフォーマンスは改善されるということを言ってるようです。 個人的な勉強がてら、メモとして残します。 ・__call のマジックメソッドを使うと遅い ・staticなメソッドはインスタンス化したオブジェクトのメソッドより速い ・関数呼び出しは、staticなメソッド呼び出しより高速 ・ローカル変数へのアクセスはグローバル変数へのアクセスより速い ・グローバル変数へのアクセスは、オブジェクトのプロパティより速い ・オブジェクトプロパティへのアクセスは、__get, __set を使うと遅い ・初期化された変数はそうでな

  • 1