0

I have a webservice that is in much need of some optimization. It's on an enterprise application the resides on a virtual server machine and is getting a huge bottle neck. I'm confident in my skills and being able to make this more efficient, but I was wondering if anyone out there has had a good experience with a profiler or optimization tool that would help point me to trouble spots.

The webservices main function is to generate PDFs which are created using Sql Reports and a third party PDF Writer utility. Basically it gets an ID and creates X number of PDFs based on number of Forms that are associated to that ID. So it has a loop which can run an average of 8 times / ID, and there are thousands of IDs sent daily. Needless to say there is always a back log of PDFs to be created, which the client would rather not see.

I have also thought about running multi-threads to asynchronously generate the PDF pages but I'm hesitant because they said they had issues with multi-threading on the "Virtual Server". So if anyone can point me to a good tutorial or advise about multi-threading on a Virtual Server I would appreciate that too.

Thanks for any help you can give.

4

4 に答える 4

1

I've used this one before and it's great:

JetBrains dotTrace

http://www.jetbrains.com/profiler/whatsnew/

于 2012-05-11T18:56:35.570 に答える
0

他のプロファイラーがあります:ANTS: http: //www.red-gate.com/products/dotnet-development/ants-performance-profiler/

SQL呼び出しのプロファイルも作成できます。また、現在EAPが開いているため、データベース呼び出しの機能がさらに強化されています。これは、http: //help.red-gate.com/help/ANTSPerformanceProfiler/download_eap.htmlにあります。

YourKitがあります: http ://www.yourkit.com/

Visual Studioにもプロファイラーがありますが、それほど良くはありません。

于 2012-05-11T19:09:24.180 に答える
0

TelerikのJustTraceを試してみてください、それはたくさんのきちんとしたものを持っています。サポート付きの60日間の無料トライアルがあるので、最初に試すことができます。

高速プロファイリング

JustTraceは、高速メモリとパフォーマンスプロファイリングを再定義することを目的としています。プロファイルされたアプリケーションに最小限のオーバーヘッドを追加し、ほぼシームレスな実行を可能にし、インプレース分析を可能にするため、アプリケーションをその環境から移動する必要がなくなります。ユーザーは、アプリケーションの存続期間を通じて複数のスナップショットをすばやく取得することにより、アプリケーションの動作のさまざまな段階を調べることができます。

オーダーメードのプロファイリング

JustTraceは、最も要求の厳しいプロファイリング要件にも対応するために、サンプリング、メモリ、トレースの3つの異なるプロファイラーを提供します。

すでに実行中のプロセスのプロファイリング

JustTraceを使用すると、ライブプロセスに目立たないように接続できます。アプリケーションでメモリまたはCPUの消費量が増え始めた場合、その状態を分析することで、他の方法では再現が難しいシナリオを処理する機会が得られます。

シンプルでありながら直感的なUI

定義上、メモリとパフォーマンスのプロファイリングツールを使用すると、速度を落としたり邪魔になったりすることなく、アプリのパフォーマンスを高速化できます。JustTraceは、パフォーマンスとメモリの結果を簡単にナビゲートできる、最小限でありながら非常に直感的なユーザーインターフェイスを採用しています。いくつかの簡単な手順で、プロファイリングするアプリケーションを選択することから、JustTraceによって作成されたプロファイリングインサイトの詳細な分析に至ることができます。メモリとパフォーマンスのプロファイリングがこれまでになく簡単になりました。

ライブプロファイリング

JustTraceを使用すると、アプリケーションの実行をリアルタイムで監視できます。アプリケーションの動作をクローズアップで監視すると、潜在的なパフォーマンスのボトルネックが表面に現れ、調査する価値のあるアプリケーションの段階の信頼できるヒントが得られます。

スタンドアロンツールとシームレスなVisualStudioの統合

JustTraceは、Visual Studioとのシームレスな統合を提供し、スタンドアロンツールとしても使用できます。JustTraceをVisualStudioのUIに統合すると、開発環境とツールの間を移動して、結果として生じるメモリとCPU使用率の改善をテストするために必要な時間が短縮されるため、面倒な手順が不要になります。コードを変更し、Visual Studio UIを介して実行するだけで、JustTraceのコア機能を単一のツールウィンドウで取得できます。

複数のアプリケーションタイプのプロファイリング

JustTraceを使用すると、ローカルアプリケーション、実行中のアプリケーション、Silverlightアプリケーション、およびローカルASP.NETWebサイトのプロファイリングが可能になります。

于 2012-05-11T19:03:31.243 に答える
0

I would suggest taking a look at ANTS Memory & Performance Profiler from Red Gate:

The ANTS profilers do a fantastic job of identifying bottlenecks and memory leaks. They're not free, but they're very affordable and offer fully functional trials so you can evaluate the products.

于 2012-05-11T19:07:43.783 に答える