Solr 4 インスタンスが遅く、その理由がわかりません。パフォーマンスを最適化するために、JVM、Tomcat6、および Solr 4 の構成を変更して、1 秒あたりのクエリ数を主要なメトリックとして使用しようとしています。現在、Debian スクイーズを使用して EC2small
層で実行していますが、必要に応じて Ubuntu に切り替える準備ができています。
私のユースケースについて特別なことは何もありません。インデックスは小さいです。クエリには適度な数 (たとえば 10) のユニオンとファセットが含まれますが、それは珍しいことではないと思います。
私の理解では、これらの領域は微調整が必要になる可能性があります。
- JVM ガベージ コレクションのスケジュールとメモリ割り当ての構成 ( 「GC チューニングは正確な芸術形式です」、参照)
- その他の JVM 設定
- Solr のクエリ結果キャッシュ、フィルター キャッシュ、ドキュメント キャッシュの設定
- Solr の自動ウォーミング設定
Solr のパフォーマンスを監視するには、いくつかの方法があります。
しかし、これらの方法のいずれも、どの設定を調整する必要があるかを示すものではなく、パフォーマンスを向上させる可能性のある設定の完全なリストを順を追って説明するガイドはありません. 次のページ ( one、two、three、four ) をレビューし、これまでに試行錯誤を繰り返しましたが、改善されていません。
質問:
- 小さな EC2 インスタンスで 2 GB のメモリをすべて使用するように JVM に指示するにはどうすればよいですか?
- JVM ガベージ コレクションをデバッグおよび最適化する方法は?
- 新しい EBS IOPS 料金などの I/O スロットリングがいつ問題になるかを知るにはどうすればよいですか?
- 以下の NewRelic の例のような図を使用して、問題のある動作を検出する方法と、解決策にアプローチする方法を説明します。
答え:
- DevOps またはサーバー管理者の観点から (インデックスやアプリケーションの設計ではなく)、Solr 4 のセットアップと最適化に関する適切なドキュメントへのリンクを探しています。
- 問題の原因である可能性が最も高い catalina.sh、solrconfig.xml、solr.xml (その他?) の上位の問題点を探しています。
- または、質問に対処すると思われるヒント。