|
||||||||||||||
| 前のページ 1 2 3 | ||||||||||||||
| tmpfsにMySQLデータを移動する | ||||||||||||||
|
このオンメモリデータによる高速データベースの構築方法ですが、手順はリスト5の通りです。 リスト5:tmpfsをマウント
$ sudo mkdir -p /shm/mysql/bookmark
まず、tmpfsを作成し、適当なマウントポイントにマウントします。ここでは/shm/mysql/bookmarkというディレクトリを作り、そこに2048MBのtmpfsをマウントしています。 次に、MySQLのデータを元々ある場所からコピーして移動します(リスト6)。 リスト6:データベースをtmpfsにコピー
$ cd /var/lib/mysql/bookmark
/var/lib/mysql/bookmarkにあるものとします。なお、はてなブックマークでは各テーブルのストレージエンジンに、参照系クエリーが高速なMyISAMを採用しています。MyISAMテーブルのデータはコピーするだけで移動させることができます。データのコピーを行う最中に更新処理がかからないよう、MySQLは停止しておきましょう。 これで準備は整いました。あとはMySQLの設定ファイルであるmy.cnfで、新しいデータの格納ディレクトリを設定してやればOKです。/etc/my.cnfを編集し、以下の一文を加えます。
datadir=/shm/mysql/bookmark
|
||||||||||||||
| 以降・・・ひたすらサーバーを追加する | ||||||||||||||
|
はてなブックマークでのWebサーバー、データベースサーバーの増設の過程を解説してきました。ここまでで解説した時点では、Webサーバーが3台、データベースサーバーが2台とまだ小さな構成です。が、ここから先の負荷分散は、しばらくの間は難しいことはありません。ここまで増設したのと同じ方法で、適宜サーバーを追加していけばよいのです。 負荷分散のコツは、いかにサーバーを追加するだけで分散できるようなシステムを構築するかにかかっています。負荷を分散する必要が出るたびにアプリケーションを作り変えたり、大きな作業が発生するようでは、メンテナンスにコストがかかりすぎます。サーバーを増やすだけでよい環境であれば、チープなサーバーが簡単に手に入る昨今ですから、コストは最小限に抑えられます。 |
||||||||||||||
| まとめ | ||||||||||||||
|
簡単になりますが、はてなブックマークを題材にしたLAMPでの中規模アプリケーションの運用ノウハウを解説してきました。本稿で触れた方法論は非常にオーソドックスなもので、いろいろな環境で応用が利くのではないかと思います。PerlでのWebアプリケーション開発の知恵として参考にしていただければ幸いです。 なお、冒頭で紹介したYAPC::Asiaでの発表資料には、本稿で触れたトピック以外にもmod_perl2.0の話題、botプログラムからのアクセスを分散するノウハウ、データベースのコネクションプーリングに関する是非といった、今回は触れなかったトピックについても記述してあります。興味のある方は是非ご一読いただければと思います。 |
||||||||||||||
|
前のページ 1 2 3 |
||||||||||||||
|
|
||||||||||||||
|
|
||||||||||||||
|
||||||||||||||
|
|
||||||||||||||
|
||||||||||||||
|
|
||||||||||||||
|
||||||||||||||

