1

Django プロジェクト用に Sentry をセットアップすることを検討していますが、Sentry サーバーをメインの Web アプリケーションと一緒にインストールするか、別の Web インスタンスにインストールするかを考えていました。

Sentry を同じ webapp に含めることで考えられる利点は次のとおりです。

  • セットアップとメンテナンスの容易さ (2 つではなく 1 つの Web アプリケーション、イベントレットをインストールする必要がないなど)
  • 管理者の使いやすさ (例: webapp 管理者と同じアカウントで Sentry にログイン)

Sentry のドキュメントでは、同じ webapp で実行すると webapp のサービス品質が低下することが示唆されていますが、具体的にはどうすればよいでしょ?

  • エラーが発生していない場合、Sentry は Web アプリケーションを遅くすることができますか?
  • 多くのエラーが発生している場合 (たとえば、1 分間に 10 件)、webapp が極端に遅くなる可能性はありますか?
4

1 に答える 1

8

Sentry は、エラーが発生しない限り何もしません。エラーが発生した場合でも、応答時間への影響はごくわずかです。少なくとも、システム上の他の種類のログ記録と同じくらい無視できます。ただし、一般的に、これがアプリに影響を与えることはありません。

ドキュメントが参照している統合 Sentry が問題となるシナリオは、高同時実行環境であり、QoS (サービス品質) が必須のシナリオです。それらについてもう少し詳しく説明します。

まず、高い同時実行性。ここでは、あなたのウェブサイトは非常に多くのトラフィックを受け取っているため、1) リクエストを処理するためだけにサーバーを必要最小限にする必要があるか (Twitter や Facebook を考えてください)、または 2) サーバーを屈服させるのに十分な負荷がかかっています (Digg 効果ですが、おそらく今すぐ名前を変更する必要があります)、その場合、Sentry へのアクセスも失われます。

次に、QoS への影響です。サーバー上でアプリを混在させると、障害点が増えることになります。Django プロジェクトにバグがある場合、それによって Sentry がダウンする可能性があり、診断がはるかに難しくなります。または逆に、Sentry で何かが爆発した場合、Django プロジェクトがダウンして、訪問者、売り上げ、広告収入などを失う可能性があります。

問題は実際にはパフォーマンスではなく (それは重要ですが)、職務の分離と障害点の削減に関するものです。小規模なサイトを運営している場合は、おそらくそれほど気にする必要はありません。ただし、Disqus (Sentry を作成している) のようなサイトでは、分離された Sentry サーバーが必要です。

于 2011-07-25T19:54:22.380 に答える