うっかり窓開けたまま寝たら(最近蒸し暑いよね・・・え?俺だけ?!)、当たり前のようにカゼーの呪いによりダウソ。典型的熱風邪ですた。2日も会社休んでしまったので忙しいのなんの・・・もうね。
UNIXネットワークを知る者達にとってはハッカー神なのですitojun氏は。 WIDE, IPv6方面では多大な貢献をされています。 こんなに早く亡くなられる とは思いませんでした・・・ はうン方面だと「ぽぽぽ」から 飯記録が辿れたので、 僕もたまに見ていました。今見たら10月28日まで記録があるのに・・・
なんですごい人ほど早く亡くなってしまうのか。確かにそう思うけど、 村井純教授がおっしゃられているように、生きてる人間が意思を つがないといけないんでしょうな。能力云々ではなく決意と言っても いいかもしれない。
TokyoTyrantでシステムを組んで、ようやく(俺側の)バグも減ってまともに動き出したのだが... 何かおかしい。特に80万件ほど突っ込んでいる検索サーバが 使っているうちにどんどん遅く、しまいに応答を返さなくなる のだ。これがひどくて、検索クエリだけならともかく レコード数さえ数えられなくなる のでマジ異常。
# tctmgr inform -port 20301 localhost
だけで5分くらい固まるからな。
xmsizってのは
`xmsiz' specifies the size of the extra mapped memory. If it is not defined or not more than 0, the extra mapped memory is disabled. The default size is 67108864.
というわけでmapped I/Oのためのメモリ領域のようだ。特にデータベース全体が メモリにすっぽり収まっているサイズの場合は高速化が期待できる。
しかし.....これを11テーブル(プロセス)、各10スレッドで動かすとこうなる。
特に注目すべきはcommitedの値。overcommitが許されるからといって 実メモリの倍ってどういうことだ?! 感覚的には何かおかしなことが 起こってもおかしくない(持って回った言い方だが俺もこれが本来の状態かわからんのだ)。
しかし、当然のごとく運用実績の乏しいTokyoTyrant/TokyoCabinetでは 似たような事例はなく。しょうがないからソースを読んだのだが..... テーブルDBにつけてる全部のインデックスでmmap()呼んでるうううう(^^;
なんでこんな実装になってるんだ。11プロセスで打ってあるインデックスは99個。 各テーブル自体もtchdbなので 99+11=110回mmmap()をコールするわけだxmsizのサイズで。 デフォルトが67MBだから....67*110=7370MB....
グラフとだいたい計算もあう。もちろんLinuxのVMががんばるから多少オーバーしても大丈夫なんだ。 でも、1日くらい20並列くらいでクエリーを投げつづけているとだんだん遅くなってきて...というパターン。
やっぱりTokyoTyrantのテーブルDBって「おまけ」で、 誰もまともに使ってないんだね....大失敗だ。しかも初期の負荷テストでは全く 気付くことは不可能だと思いませんかね。
昔からiPhoneやiPadやらの対応はしなきゃなーと考えていたのだが、 そもそも2万円以下の中華Pad(厳密にはAndroid2.2以降のフルFlash対応Android端末)でも再生できてしまってたので、あんまりやる気がでなかった。
私もいずれiPhoneもAndroidに買い替えるつもりだったし。
しかし....とあるツテで秘密のバイナリを入手したのでパパッとでっちあげることにした。オープンソースでないという理由で公開できないのが玉に傷ですがね。
ま、本当は工作1:iPhoneでワンセグのライブストリーミングといった ような仕掛けを自分で作ればいいのだがどうにもやる気が.....ね。
家庭内のワンセグサーバーにアクセスするのに、 いちいちhttp://IPアドレスとか打ちたくなかったので、 avahi-daemonをいじってApple Bonjour対応にした。 無料iPhoneアプリに ZeroConfSpyというのがあるのでコレと連携するように。
オンエア再生は先に書いた通りHTTP Live Streamingです。ちょっとおかしくてTBSの音声が遅れたり東京MXのTS分離がうまくいっていないけど。
一方で、MP4再生はTSConvrterLinuxとffmpegで真面目にトランスコードするようにしました。最近のffmpegはvpreにipod320のプロファイルが予め入ってるので便利。
エンコードするので遅い反面、端末間のデコーダーの差異の影響を受けにくくなるので、例えばUbuntuのChromeでもそのまま再生できたりするメリットがあります。
_ 通りすがりのあいあん [あ、こっちでも醸されている・・・ お大事になさいませ。]