unoh.github.com

[April Fool]「フォト蔵」から学ぶ効率のよいマルチスレッド処理と自社サーバのススメ

Sat Mar 31 20:00:10 -0700 2007

ムノウラボをご覧の良い子の皆様、こんにちは。

以前フォト蔵サーバをホスティング業者から自社サーバに移民させたことは記載せていただいたと思いますが、今回はフォト蔵サーバ内でどういう処理を、どう効率よく進めているか?を写真を交えながらご紹介したいと思います。

非常に高効率なマルチスレッド処理なので、サーバ構築の際は是非参考にしてみてください。

まず、処理のノウハウに先だちまして、フォト蔵のサーバをホスティング業者から自社サーバに移民させた理由を説明します。

【移民させた理由】
  1. マシンの増員に時間がかかり、フレキシブルに対応できない
  2. フォト蔵のような写真系のサービスの場合、十分広い暗室を確保する必があるが、暗室を確保するにはコストがかかる。
  3. フォト蔵のような写真系サービスの場合、大容量の現像液・現像停止液必要になるが、大容量の現像停止液を搭載したマシンは酢酸臭くなり、ホスティグ業者に迷惑がかかる。


とにかく、自社サーバにしてから処理速度の向上と、高効率なマルチスレッド処理を、低コストで実現する事ができました。そのノウハウを写真を交えながらご案内します。

まずはサーバルームの写真から紹介しましょう。

サーバルーム
サーバルーム posted by (C)モロ蔵

サーバは熱を発するため、サーバルームは常に熱気ムンムン。クーラーでは追いつかないため、扇風機も常時動かしています。サーバ内部はさらに暑いです。時折、サーバから出てしっかりとすずまないと理性がなくなります。温度は常に監視し、緊急時には外へ出す事が処理速度をはやめる秘訣です。

次はサーバ内部の様子です

サーバ内部
サーバ内部 posted by (C)モロ蔵

主に写真の現像、アルバムへ保存する作業をしています。暑さと酢酸の刺激臭と戦いです。流れ作業ではなく、各自が自主的に仕事を探し、処理を行っています。人数分だけマルチスレッド処理が可能になり、非常に効率があがりました。また、写真にこだわりをもったサーバなので、写真のチェックは常に2人がかりです。

最後は動画のエンコード処理、熱暴走手前の状態です。

動画のエンコード処理
動画のエンコード処理 posted by (C)モロ蔵

動画のエンコード中です。動画のエンコードは非常に高負荷な処理のため、CPUの熱が急上昇します。理性がなくなったサーバがいますが、この後外に出してすずませます。常に監視をしておく必要があり、手間がかかりますが、彼らのおかげで処理速度は以前に比べてはるかに向上しました。

今回はサーバ構築にあたってかなりコアな部分を書きました。精神面でもいろいろ工夫をしていますので、それについてはまた後日書きたいと思います。

なお、非常に残念ではありますが本日ウノウ株式会社がムノウ株式会社に買収されたため、今後はムノウラボとして活動していきます。

4月2日追記


エイプリルフールネタです。