0

何千もの電子メールを送信し、何千ものXML応答レコードをローカルデータベースに保存するためのSOAPWebサービスを実装しています。(c#.net、ビジュアルスタジオ2012)

サービスの利用者をできるだけ速く軽量にしたいと思っています。いくつかの考慮事項を知る必要があります。私はいつも自分のコードがそれよりも速く実行されるべきだと感じています。

例えば

  1. データセットを使用するとオーバーヘッドが増えることを読みました。では、代わりにオブジェクトのリストを使用する必要がありますか?
  2. ORMを使用すると、コードに速度が低下しますか?
  3. コンソールアプリケーションはWinFormよりも高速ですか?ユーザーが対処するためのGUIを必要としないためです。いくつかのメソッドを呼び出す、アプリに送信されるいくつかのパラメーターがあります。

SOAP Webサービスを処理するための最も効率的な方法は何ですか?

4

2 に答える 2

2

それを機能させてから、高速化することを心配してください。ボトルネックがどこにあるかを推測しようとすると、おそらく間違った推測になります。何かを最適化する最良の方法は、前後に実際のコードを測定することです。

データセットとORMおよびWinフォームアプリ、コンソールアプリはすべて非常に高速に実行できます。自分に合ったテクノロジーを使用し、実際に必要な場合は速度を調整します。

最後に、パフォーマンスの問題がある場合は、問題に合わせてアルゴリズムの選択を変更すると、前述のテクノロジーを変更するよりもパフォーマンスに大きな影響を与える可能性があります。

于 2012-12-17T10:01:03.707 に答える
2

Considering my personal experience with soap, in this scenario I would say your main concern should be on how you retrieve this information from your database (procedures, views, triggers, indexes and etc).

The difference between console, winform and webapp isn't that relevant.

After the app is done you should make a huge stress test on it to be able to see where lies your performance problem, if it exists.

于 2012-12-17T10:12:58.790 に答える