2016-05-11 3 views
2

StatsDとRiemannの違いは何ですか?大規模な分散システムではどちらが優れていますか?私たちはJava上に構築された分散プラットフォームを持っており、アプリケーションのメトリックやいくつかのアラートを監視したいと考えています。私たちは計装が無料ではないことを理解しています理想的には、私たちはプラットフォーム/アプリケーションに最小の計装コストを加え、あらゆる種類の集計などを行うことができる高度にスケーラブルなアプリケーション監視フレームワークを探しています。私は両方の組み合わせであるものを作ることができると理解していますが、理由を考えることができませんなぜですか?どちらも集計などを行っているように見えますが、どちらがより適しているのか、またはどちらが他よりも優れているのかを特定することはできません。誰かが業界のツールで経験を共有できるなら、大きな助けになるでしょう。私はstatsdのハード番号を持っていないが、GitHubののブルーベックのポストは、彼らがで彼らのstatsdイベントの約40%を失ったことを示唆しているStatsDとRiemannの違いは何ですか?大規模分散システムではどちらが優れていますか?

答えて

4

- これらのグラフを推測 - 私は秒である - 25,000イベント/秒。 Cのstatsdの代わりに、430万回/秒のイベントが発生しています。 http://githubengineering.com/brubeck/

リーマンはパケットごとに競合しませんが、たとえば10-100個のメトリック/メッセージのバッチで、競合することはありません。 Riemannはstatsとは異なり、使用可能なすべてのコアにスケールアップします。テストでは、ネットワークインターフェイスと48個のコアを飽和させましたが、実際のパフォーマンスは競合やストリームの処理によって異なります。はるかに遅くなる可能性があります。すべてが依存します。

リーマンはstatsdと比べて、はるかに豊かなイベントモデルを持ち、任意の計算を実行します。小さなRiemann設定はstatsdの機能を複製できますが、多次元ロールアップ、状態遷移検出、あらゆる種類の他のストレージとアラートサービス、フラップ抑制、フロー制御などとの統合が必要な場合は本当に輝きます。

そのコストは、あなたのチームになじみのないプログラミング言語Clojureで働いています。スコープや状態についてさらに慎重に考えなければならず、独自のストリームを作成する場合は並行性が必要です。リーマンはまた、広く普及していないため、図書館のサポートや雇用スタッフの面で欠点になる可能性があります。

+0

こんにちはカイル!あなたのお返事ありがとうございました。リーマンは他の言語のバインディング(right)(riemann.io/clients.html)を持っているようです。私のケースではJavaクライアントライブラリがありますが、Clojureを使用する必要があるのはなぜですか?リーマンはすべての集計をstatsDと言うのでしょうか?最後に、10million/secの拡張に使用したノードの数について考えていますか? – user1870400

+0

リーマンもダッシュボード用にルビーを使用しているようです。開発者が知り、管理し、展開を計画する必要があるもう一つのことは、今です。私はできるだけルビーから離れたいと思っています。 – user1870400

+0

私たちは設定ファイルでクロージャを使う必要がありますか?それはどのように動作するのですか?リーマンはそのデータをどこに保存しますか?InfluxDBなどのデータベースに集計データを保存して後で履歴分析を行う場合はどうしたらいいですか? – user1870400

関連する問題