2016-07-25 2 views
0

おはようございます、 私はプログラミングの世界ではかなり新しいことを認めていますが、この問題の解決策を見つけることができませんでした。助けてください、私はここで尋ねようとしました。Java EE Webアプリケーションの遅さの原因を特定する

私はsqlserverデータベースでhibernateとnativeクエリを使用して開発されたデータ読み込みのバッチを持っています。 プロダクションマシンでは非常に遅いですが、マシンは地元のラボで使用するマシンよりはるかに強力です。

ダバターゼは既に索引を付けていますが、多くのクエリは高速化のためにネイティブであるため、RAMの量が膨大なので、問題の原因を特定できないか、Javaアプリケーションを "分析する"問題がどこにあるのか把握するために走っています。

余裕があれば、Javaアプリケーションの重要な点を分析する方法を説明したり、説明するのに役立ちますか? ありがとう

+0

あなたの質問はあまりにも広すぎます。多くの潜在的な説明があります。それはただ一つの合理的な答えには収まりません。真剣に:あなたは "初心者"です...私はこれが遠隔で行うことができるとは思わない。自分のチームに直接話すことができる人はいませんか?確かにJava EEアプリケーションは夜間には存在しませんでした。だからしばらくの間、それを使っている人がいなければなりません...もしquora.comで尋ねることができれば、おそらくそこに行く "議論"を得るより良いチャンスです。 – GhostCat

+0

フェッチタイプ(https://howtoprogramwithjava.com/hibernate-eager-vs-lazy-fetch-type/)とモード(http://www.solidsyntax.be/2013/10/17/fetchching-collections-hibernate)を確認してください。 /)。クエリが最適化されていない可能性がありますので、ローカル環境で非常にうまく動作し、多くのデータではなくライブで動作します。 – Justas

+0

Ok @GhostCat、いくつかの詳細を追加しようとしました – Delayer

答えて

1

実際にバッチクエリを使用している場合は、バッチサイズが何らかの大きさである可能性がありますが、容認できるパフォーマンスを得るまで、量を減らして実行してください。 バッチクエリを使用していなかったので私はかつてこのような問題を抱えていましたが、バッチクエリを使用した後はすべてうまくいきました。

-1

多くの理由が考えられます。あなたのアプリに関するデータをいくつか教えてください。エンティティの構造、クエリ、より正確なもの。

+1

はい、コメントするには十分な評判がありません。しかし、それを隠す答えを書くことは良い考えではありません。答えは答えですから。コメントではありません。 – GhostCat

関連する問題