規模の大きなウェブサイトではロードバランサでウェブサーバを複数台設置し負荷の分散を計りますが、これがコンテンツ管理側になると更新するサーバが増えることで手間と時間がかかります。一番手っ取り早いのはrsyncでバッチ処理を行うことですがこれも数十万ファイル、数百Gバイトのコンテンツとなると遅延が激しくて泣きそうです。これがさらに10倍のボリュームに耐えられるのか?って聞かれたら現状の方法ではHDDの物理的能力の限界で無理って事に。ウェブを分散するくらいなのでアクセスは当然多く、この場合共有ストレージだとスループットに悪影響。複数台のHDDにミラーリングする装置も探せばありますがかなり高価、専用サーバ増設より高いとかw
こういうのは将来を見据えて分散処理しやすいようにディレクトリ設計しなければならないところですが、これはギャンブルに近い。
であれば何とか必要最低限の処理に留めたい。という事でlsyncを併用して効率化できるか検証中。さっそく8192ファイル制限に掛かってハマりましたけどね。対策方法など詳細は検証終了後に書く予定。
lsyncd - Project Hosting on Google Code
コメントする