Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
みなさん、こんにちは。
以前 Web サービス認証におけるベストプラクティス を紹介しましたが、今回も
引き続きベストプラクティスの検証記事をお届けします。
Execute メソッド 対 共通メソッド
SDK には、以下のベストプラクティスの紹介があります。
共通メソッドの使用
共通メソッドは、対応するメッセージで Execute メソッドを使用するよりもすばやく
実行できます。
つまりレコードを作成するなら、 Execute メソッドより、 Create メソッドを利用した
方がパフォーマンスが良いということです。では実際に試してみましょう。
前提
今回も、前回同様コンソールアプリケーションを利用します。また前回のベスト
プラクティスを考慮した開発を行っています。環境は新規に作成した Microsoft
Dynamics CRM 2011 設置型で、重複検出ルールは無効、プラグインやプロセス
はともに存在しない、取引先企業レコードを 1000 件連続作成します。
プログラム A では Create メソッドを、 プログラム B では Execute メソッドを
それぞれ利用しています。
検証結果
パフォーマンスのばらつきを考慮して、5 回検証しました。
| プログラム A | プログラム B | |
| 1 回目 | 21 .2 秒 | 23 .1 秒 |
| 2 回目 | 17.2 秒 | 17.6 秒 |
| 3 回目 | 19.0 秒 | 19.5 秒 |
| 4 回目 | 18.3 秒 | 17.0 秒 |
| 5 回目 | 16.1 秒 | 20.1 秒 |
ほとんど差はないものの、概ねプログラム A のパフォーマンスが良い傾向が
出ています。また 5000 件 レコードを作成する検証も 1 度だけ行いましたが
1000 件の時と大差ない結果となりました。
| プログラム A | プログラム B | |
| 1 回目 | 81.6 秒 | 82.2 秒 |
まとめ
今回非常に簡単なシナリオをプログラムで検証した限りでは、Execute と
Create 共通メソッドの差を見ることはできませんでしたが、また他の共通
メソッドで検証してみたいと思います。
‐ Dynamics CRM サポート 中村 憲一郎