はじめに
Sinatraは軽量設計のため、必然的に高効率のソフトウェアですが、それでもコード内のボトルネックがスループットや応答時間に大きな影響を与える場合があります。New Relicは、アプリケーションが処理に時間をかけている重要な領域に関する詳細な情報をお知らせすることで、そうしたボトルネックの検出を支援します。アプリケーションの処理が遅いのは、データベースが原因でしょうか? あるいは、Rubyのガベージコレクターが原因でしょうか? サーバーリクエストがキューにたまっているのでしょうか? あるいは、コードベース内に特に頻繁に実行されるメソッドがあるのでしょうか? New Relicがそうした疑問にお答えします。
主な機能
- エンドユーザー体験を監視
- アプリケーションアーキテクチャをマッピング
- アプリケーションパフォーマンスに関する問題を分析して改善
- 異常を検知し、発生する前にエラーを防止
対応フレームワーク
個々のルートやクエリにドリルダウンする
New RelicはSinatraのルートを自動的に検出し、詳細なパフォーマンスデータを表示して、最も遅延しているルートの最適化に注力できるようにします。例えば、特定のデータベースクエリの処理に時間がかかりすぎている場合、それがどんなクエリだったか、どれくらい時間がかかったか、コードのどこで遅延が生じたかを確認できます。また、パフォーマンスの低いトランザクション内の個々のイベントも見ることができます。さらに、コードや実行中のトランザクションに照らして、そのイベントがどこで生じているかを監視できます。メソッドへのカスタムインストゥルメンテーションの追加は、宣言によって簡単に行うことでき、アプリケーションのパフォーマンスをより的確に把握するためのパーソナル化されたツールを装備することができます。
サービス指向アーキテクチャに最適
小規模なSinatraアプリケーションは、多くの場合、アプリケーション環境全体の中にある自己充足型サービスを提供するために使用されます。New Relicを利用すれば、環境内のすべてのサービスと分散トレーシング機能とのやりとりを確認でき、それらが相互にどう関連しているかを視覚的に見ることができます。さらに、サービススタックを通るアプリケーション間のトランザクションを追跡することも可能です。Sinatraアプリケーションが環境全体にどのように適合しているかが見えることは、アプリケーションスタック全体の最適化を図る上で非常に大きなメリットになります。
無料のNew Relicアカウントにサインアップ
New RelicでSinatraアプリを監視しましょう。New Relicの全機能にアクセスできる無料アカウントにぜひサインアップしてみてください。