Ruby
 Computer >> コンピューター >  >> プログラミング >> Ruby

AppSignal を使用して Rails でソリッド キャッシュのパフォーマンスを追跡する

AppSignal は Solid Cache をサポートするようになり、他の Rails キャッシュ ストアから得られるのと同じ詳細なキャッシュ パフォーマンスに関する洞察が得られます。

このブログ投稿では、Solid Cache の概要と、AppSignal を使用してアプリのキャッシュを監視することでどのようにメリットが得られるかを説明します。

ソリッド キャッシュとは何ですか?

プラグ アンド プレイ、データベースに依存しないリモート ディスク ストレージ キャッシュ。つまり、メモリに保存される Redis や Memcached とは異なり、Solid Cache は Active Record を通じて SQL データベースを使用し、キャッシュをディスク上に保持します。

Solid Cache は、37Signal の電子メール サービスなど、比較的安定した大量の履歴データを含むアプリケーションを使用する場合に有利なキャッシュ方法である可能性があります。新しいメール以外に、以前の電子メールが突然変更されることはないからです。

AppSignal を使用したソリッド キャッシュの監視

AppSignal は、風車、運河、ストロープワッフル、そしてもちろん雨で知られる国、オランダで生まれました。すごく雨が降った。自転車が主な交通手段である場合、いつ雨が降るかを知ることは非常に重要です。そのため、SkySignal という名前の Rails アプリを作成しました。 .

SkySignal は API に接続してオランダ全土の気象データを利用し、人々に自分のいる場所で雨が降るかどうかを知らせ、開発者が DRY 🥁 でありながら濡れずに過ごせるように支援します。

Hey と同様に、私たちもキャッシュを使用して天気予報をユーザーに迅速に提供することで、アプリケーションの応答時間を最適化したいと考えています。この場合、Solid Cache を使用して過去の気象データをキャッシュします。

ここでは Hey と同じ理由で Solid Cache を選択しています。これにより、Redis などの代替キャッシュを使用する場合に比べてわずかなコストで大量のデータをキャッシュできるようになります。

ソリッド キャッシュのインストール

Solid Cache のインストールは簡単です。Solid Cache の Readme に記載されている手順に従います。

<オル>
  • まず、目的の環境設定ファイルで Solid Cache をキャッシュ ストアとして設定する必要があります。
  •  <オル> 
  • 次に、solid_cache を追加する必要があります。 gemfile に追加します。
  • 次に、Solid Cache の移行を作成して実行し、データベース キャッシュを作成する必要があります。
  • この場合、キャッシュをプライマリ データベースに書き込みますが、必要に応じて、キャッシュを別のデータ ストアにシャーディングするように Solid Cache を構成することもできます。シャーディングはキャッシュをより小さな部分に分割し、異なるデータベース (シャード) に分散します。

    次に、アプリを監視するために AppSignal をインストールします。

    AppSignal のインストール

    AppSignal のインストールは簡単です。すぐに起動して監視できるように、インストール ウィザードを作成しました。

    ウィザードを開始するには、AppSignal アプリケーションの概要ページで [アプリの追加] ボタンをクリックするか、サインインしている場合は、このリンクを使用してウィザードを開始できます。

    AppSignal が正常にインストールされるとウィザードによって通知されます。また、まれに問題が発生した場合は、開発者間での支援のために当社のサポートに引き渡してください。

    AppSignal を使用して Rails でソリッド キャッシュのパフォーマンスを追跡する

    AppSignal を手動でインストールする場合は、インストール ドキュメントに従ってください。

    これで AppSignal がインストールされました。 SkySignal アプリのパフォーマンスの監視を開始できます。

    ソリッド キャッシュの監視

    AppSignal はアプリケーションのパフォーマンス メトリクスを収集し、それらを実用的な洞察に変換します。 AppSignal には開発者向けの監視ツールの大規模なツールキットがありますが、このブログ投稿では次のことに焦点を当てます。

    • 指標ダッシュボード: エラー率や全体的な応答時間など、アプリのパフォーマンス データを視覚的に追跡します。 SkySignal については、キャッシュ サイズとパフォーマンス時間を確認します。
    • 異常検出: 指標が特定のしきい値を超えた場合(たとえば、キャッシュ サイズが短期間で大幅に増加した場合)にアラートを送信するトリガーを作成する

    ああ、Solid Cache を使用しなくても心配する必要はありません。 Rails キャッシュ ストアに関係なく、AppSignal で同じ優れたメトリクスを取得できます。

    ダッシュボードを使用したソリッド キャッシュの監視

    AppSignal のグラフは、アプリケーションのパフォーマンスを視覚的に監視する優れた方法です。マーカーを追加してパフォーマンスの急上昇に関するコンテキストを共有したり、グラフ上の任意の場所をクリックすると、その瞬間のアプリケーションのパフォーマンスのスナップショットを確認できるため、デバッグが簡単になります。

    応答時間の監視

    Solid Cache を設定したので、アプリのパフォーマンスを見てみましょう。

    AppSignal を使用して Rails でソリッド キャッシュのパフォーマンスを追跡する

    上のグラフでは、SkySignal の応答時間が比較的速いことがわかります。また、SkySignal が新しい気象データのバッチを消費することによって引き起こされる応答時間のスパイクもわかります。

    キャッシュ サイズの監視

    大量のデータをリモート ディスク キャッシュに保存することで、応答時間を向上させる安定的かつ効率的な方法としてキャッシュを使用することを選択しました。

    AppSignal を使用して Rails でソリッド キャッシュのパフォーマンスを追跡する

    キャッシュが最適であることを確認するには、キャッシュ サイズを追跡し、急速に急増しているかどうかを確認し、このデータを使用してキャッシュ構成を微調整して、アプリケーションのニーズに最適であることを確認します。

    Solid Cache テーブル サイズを追跡するダッシュボードの設定の詳細については、このブログ投稿を参照してください。

    AppSignal を使用したキャッシュ異常の検出

    一方、AppSignal のダッシュボードは、アプリケーションのパフォーマンスを監視するためのエレガントで直感的な方法です。残念ながら、AppSignal の美しいグラフを見て一日中過ごすことはできません。ここで異常検出が登場します。

    AppSignal の異常検出を使用すると、エラー率が 10% を超えた場合や、キャッシュ ストレージが急速に使い果たされた場合など、特定のメトリックしきい値に達した場合に通知するトリガーを作成できます。

    AppSignal を使用して Rails でソリッド キャッシュのパフォーマンスを追跡する

    異常検出により、仕事を続行できるようになります。電子メールや、Slack や Discord などの一般的なサードパーティ コラボレーション プラットフォームを通じて通知するように AppSignal を設定すると、トリガーがトリガーされた場合にアラートが届くという安心感が得られ、アプリケーションをプロアクティブに監視して、アプリケーションのパフォーマンスやスケーラビリティに影響を与える前にボトルネックを防止できます。

    アプリのキャッシュの監視を開始する準備はできましたか?

    AppSignal では、すべての活動において優れたパフォーマンスを発揮できるよう努めています。だからこそ私たちは、Rails の最新の機能をすべてサポートするよう懸命に取り組んでいます。

    AppSignal が素晴らしいと思う理由をお客様に尋ねると、次のことが気に入っていると言われます。

    • 直感的に操作しやすいインターフェース
    • シンプルで予測可能な価格設定。
    • 開発者間のサポート

    まだ AppSignal の顧客でない場合は、ここをクリックして新しい試用アカウントを作成してください。新しいトライアル ユーザーの場合は、モニタリング データのプッシュを開始したら、私たちにご連絡ください。ストロープワッフルのパッケージをお送りします 🍪!

    ソリッド キャッシュについて詳しく知りたいですか? Donal McBreen の Rails World トークを YouTube で視聴することをお勧めします。

    AppSignal を使用して Rails でソリッド キャッシュのパフォーマンスを追跡する

    コナー・ジェームス

    AppSignal のデベロッパー マーケティング マネージャー。カノーリをこよなく愛するポッドキャスト中毒者で、名前をコノーリに変更することを検討中。彼は色に「u」があると考えています。彼がマイクの上で、ステージ上で、または勤務時間外にソファに横たわっているのを見つけるかもしれません。

    Connor James

    によるすべての記事
    1. MRIソースコードの調査

      しばらくRubyを使用している場合は、内部でいくつかのものがどのように機能するかについて興味があるかもしれません。 Rubyの内部を深く掘り下げる1つの方法は、Rubyを機能させるソースコードを読み取ることです。 Cを知らなくても、面白いものをいくつか拾うことができます。 ソースコードは、Rubyのgithubリポジトリにあります。 理想的には、クラス名とメソッド名を簡単に見つけることができるCodequeryのようなツールを使用する必要があります。 コアクラスの調査 ほとんどの探索はルートフォルダで行われます。ここに、Objectなどのすべてのコアクラスのソースコードがあります。 o

    2. Rails 導入の 20 年:RailsConf の歴史を辿る旅

      今日は、ずっと昔から存在していない人たちに向けて、ちょっとした歴史のレッスンをするつもりですが、ずっと昔から存在している人たちにとっては、これがノスタルジックな祭典になることを願っています。一緒に良い思い出を楽しむことができます。 FTP から Kamal まで、Rails アプリのデプロイメントに関するオーラルヒストリー。全文についてはビデオをご覧ください。 作者 ベンジャミン・カーティス Ben は 1999 年から Web アプリの開発とスタートアップ企業の構築に携わっており、2005 年に Ruby と Rails に夢中になりました。Honeybadger を共同設立する前