現在、Guiceとその拡張機能をかなり使用するコマンドラインツールがあります。一般的なGuiceのパフォーマンスガイドライン
ツールの機能が完了した後、私はパフォーマンスが標準より低いと判断し、単純なhprofを使用してプロファイリングを開始しました。
これは、インジェクタを作成するだけで、パフォーマンス上の大きな問題であることを指摘しています。私は一般的にModulesで実際の仕事をしないで、Providersの計算集中的な作業を予約します...
Guiceの一般的なパフォーマンスガイドラインは何ですか? @AssistedInjectとFactoryModuleBuildersの使用を避けるべきですか?できるだけ@Singletonsを避ける?すべてのバインディングが明示的で、JITバインディングを避けることを確認してください。
私はすべてを検索しましたが、本当に速いと言っている人以外の、Guiceの基本的なパフォーマンスにはあまり触れていません。
モジュールは1回だけ評価されますが、何度も提供されます。したがって、希望の効果を得るための方法があれば、まったく別のやり方をするでしょう。また、シングルトン:なぜそれらを避ける?それらを抱きしめてください。一回の作業は二回の作業よりも遅くなることはありません。 –
これは必ずしも質問に答えるわけではありません...プロファイリングから私はcreateInjector呼び出しが処理時間の半分であることを観察します。 – thebamaman
プロファイリングには、クラスローディングの時間、GC、JITが含まれているか除外されていますか?また、:[http://stackoverflow.com/questions/4748405/how-to-improve-guice-performance-at-startup]の質問をチェックしましたか? –