1

私は現在、新しいプロジェクトに取り組んでおり、OpenAccess、LLBLGen Pro、または Subsonic の ORM を超える ORM を使用することを考えています。このプロジェクトには大量のヒットが同時に発生する可能性があるため、パフォーマンス要件は非常に高くなります。

比較して私に勧めてください。ありがとう

ジム。

4

1 に答える 1

2

ジム、

この質問への回答で最良の結果を得るには、独自の比較を行う必要があります。特定の要件とデータ アクセス シナリオがそのようなパフォーマンス テストの結果に影響を与える可能性があるためです。

とはいえ、高スループットの Web アプリケーションに LLBLGen を使用すると、そのパフォーマンスは非常に優れています。大きな問題はアプリケーションの設計自体にあることがわかりました。SQL Server Profiler を使用すると、(開発中に) アプリケーションのどの部分がデータベースで多くのヒットを作成するかを確認できます。私たちが発見した最大のペナルティは、グリッドをロードしてから、別のデータベース操作 OnDataBinding / DataBound イベントを実行することでした。これにより、SQL Server データベースへの大量のトラフィック、大量の読み取り、および大量のディスク スワッピングが発生します。データ/結合などのセットを構築するときに適切な設計上の選択を行うことにより、最初のクエリですべてのデータを確実に取得することで、非常にうまく機能しています. アプリケーションをビルドするとき、またはパフォーマンスが遅いことがわかったら、後でリファクタリングします。

少なくとも、LLBLGen のオーバーヘッドはごくわずかです。膨大な数のオブジェクトを作成する場合でも高速です。他のクエリを生成するクエリを作成し (上記の例)、DB の読み取りが屋根を通り抜けると、はるかに大きなパフォーマンス ヒットが発生します。

どちらが自分のスキルと生産性に適していると感じるかについて、両方を評価することもできます。

于 2011-02-18T21:23:06.893 に答える