out_forward って詰まると性能劣化する?

4
そのっつ (Naotoshi Seo) @sonots

コレなんでですかね?? / out_forward って詰まると性能劣化する? https://t.co/9ttScfedMU #fluentd

2013-11-27 13:51:18
tagomoris @tagomoris

@sonots これNW帯域どのくらい使ってます? あとCPU使用率も

2013-11-27 14:04:39
そのっつ (Naotoshi Seo) @sonots

@tagomoris うぅ、大事なところ調べていなかった。追記しました。穴があったら入りたい。。。 #さっきまでずっとtopしてたのに。。。

2013-11-27 14:21:10
tagomoris @tagomoris

@sonots これ1スレッドですよね? 1回のtryが終わる前にそれ以上の行数がバッファに書き込まれる状況だと加速度的に状況が悪くなるのは普通のことなのでスレッド増やしてみては

2013-11-27 14:24:51
そのっつ (Naotoshi Seo) @sonots

@tagomoris 受け手側がいま1つなのですが、それでも効果ありますか?

2013-11-27 14:25:25
そのっつ (Naotoshi Seo) @sonots

@tagomoris やってみました(追記しました)。3分半の sent 間隔が1分に縮まりました。が、詰まりがなくなる、とまではいきませんでした。

2013-11-27 15:08:19
tagomoris @tagomoris

@sonots キューで処理する以上、瞬間処理性能以上にデータが来ちゃったら詰まりはじめたときに性能が劣化していくのは仕組み上当然だと思います。あといじるなら buffer_chunk_limit と上げれば見掛け上の性能はたぶん出ますけど、どこかでは詰まりますよ。

2013-11-27 15:10:12
Sadayuki Furuhashi @frsyuki

@repeatedly 最近うちであったqueue size limit exceeds問題と関係している可能性 RT @sonots: コレなんでですかね? / out_forward って詰まると性能劣化する? https://t.co/B9YqcFmG8k #fluentd

2013-11-27 15:10:51
SKS rep @repeatedly

@frsyuki あれ、アレって結局はネットワーク環境に問題があって〜という結果ではなかったっけ?

2013-11-27 15:12:37
Sadayuki Furuhashi @frsyuki

@repeatedly あー、なるほど。単にBufferedOutputのスレッドが追いついてなかっただけですか

2013-11-27 15:14:14
SKS rep @repeatedly

@sonots @tagomoris それってagent-liteだと問題ないんでしたっけ?

2013-11-27 15:15:07
tagomoris @tagomoris

@sonots @repeatedly fluent-agent-lite の場合は入力(tail -fとの間のパイプ)がblockして処理可能以上のデータが入ってくることはないですね

2013-11-27 15:16:17
SKS rep @repeatedly

@frsyuki おそらく。で、それはそれとして、スタックトレースが多くて困る、という話に

2013-11-27 15:16:56
そのっつ (Naotoshi Seo) @sonots

@tagomoris ふむー。まとめて(さっきのだと1分毎)にドバッと流さずに毎秒流すようにしたいんですが、パラメータ調整ぐらいではちょっと無理そうですね。。。

2013-11-27 15:17:05
tagomoris @tagomoris

@sonots buffer_chunk_limit を 1M とかにして buffer_chunk_limit をものすごく上げる + スレッド数を増やす

2013-11-27 15:18:34
そのっつ (Naotoshi Seo) @sonots

@tagomoris @repeatedly 補足:fluent-agent-lite のほうでは 58万行 /sec 処理できていて、それ以上のデータは順調に遅れて届いていました。ただ、詰まるような動きはなかったです。

2013-11-27 15:18:45
tagomoris @tagomoris

#fluentd のネットワーク転送性能のチューンはたいへん難しい。スループットを上げたいなら buffer_chunk_limit を上げるべきだが限界時の安定性を上げるなら chunk_limit は小さくして queue_limit を上げるべき。

2013-11-27 15:19:45
Sadayuki Furuhashi @frsyuki

バッファにも収まらないほどにスループットが処理限界を超えたら、遅れるのがいいんですかね…?それともピーク時のログは捨てられても、遅れない方が良い?

2013-11-27 15:20:37
そのっつ (Naotoshi Seo) @sonots

@tagomoris buffer_chunk_limit 1m で buffer_queue_limit を上げる。ですか?今、buffer_chunk_limit をでかくして buffer_queue_limit を小さくやっていたので逆アプローチですね。やってみます。

2013-11-27 15:20:58
tagomoris @tagomoris

@frsyuki せっかくログの中に書かれている時刻を利用できるんだから多少の遅れは許容されるはずなので、遅れたほうがよい、という考えかたはできると思います

2013-11-27 15:22:15
1 ・・ 4 次へ