kumofsに画像をしまって失敗
- スケールアウトされたサーバー郡からKVSにしまいこんだ画像を引張だすソリューションソリューションをやってみようという試みをやってました
- 簡単にスケールアウトさせたいのでkumofsを選択
- 全てのサーバー群に kumo-gateway と kumo-serverを立てる
- そいつら全部つなげる
これでレプリケーション & ディストリビューションもできた。
なおかつ全部のサーバーから画像を引っ張りだせるなりキテレツぅ!
で、テストを行う
- Jmeter で 10万回程度setを行う
- 画像サイズは 500kb あたりを想定
で、ぶん回したら
- 6万件あたりでkumofsに対してGET/SETができなくなる
という問題が起きた。
ぶっちゃけ、kumofs が大きめなデータに対して弱いのは知っていたが、ぶっ壊れるのは想定範囲外だった・・・。
また、壊れてる箇所がtokyo-cabinetのDBなのかkumo-fsの管理系なのかもわからず。
積んでもうた。
現状ではこれらを何とかする手立てがないので、別手法を考えないといけない。
kumofsは非常に素晴らしいけど
- もうメンテされてない (息してない感?)
- kumofs-ng ってgithubにあるけどどうなの?
追記:
調べてみると、Tokyo Cabinetの扱えるDBファイルの最大容量が64Gまでと決まっていたことを知る。
DBを作成する際に
tchmgr create -tl /mnt/data/kumofs/kumofs.tch 100000000
とすればOK。kumofs-serverの起動オプションにも#opts=l をいれておく(これ正しいのかわかんないけどね!)