0

私が現在開発中のモデルには、次の 3 つの要素が含まれます。

  1. (かなり) リッチな GUI を備えたクライアント アプリケーション
  2. ASP.NET/IIS Web サーバー
  3. そして、ローカル (#2 に関して) Windows プロセス (コンソール アプリケーション)

私の考えでは、クライアント アプリケーション (#1) がクエリ文字列を ASP.NET/IIS Web サーバー (#2) にポストし、ローカル Windows プロセス (#3) にクエリ パラメータを通知し、目的の関数を実行し、データを #2 に返し、それを #1 に返します。

このような (一見) 複雑なプロセスの必要性は、Windows プロセスの性質から生じます。このコンソール アプリケーションは、RPC を使用して 2 番目のサーバーに接続し、自身を認証します。ご想像のとおり、このプロセスにはコストがかかります。

Windows プロセスと ASP.NET/IIS ページをマージすると、要求ごとに新しい接続が開かれます。各認証ケースには約 4 秒かかるため、数十回の POST が立て続けに行われる場合、これはほとんど合理的ではありません。

幸いなことに、Windows コンソール アプリケーションは一度ログインすればセッションを維持できます。したがって、対話のソースが ASP.NET/IIS ページから派生することを考えると、このコンソール アプリケーションとのインターフェイスのソリューションを見つける必要があります。

この問題に関するトピックに関する Stackoverflow/MSDN のほぼすべての投稿を読みました。リモート処理、パイプ、ソケット、WCF などを使用できることを知っています。

そこで皆さんにお聞きします。同様の問題に遭遇したことがある場合、どのように解決しましたか? 私は正しい方向への決定的なポイントを求めているだけです。コードを含めることができれば、さらに感謝します。

ありとあらゆる助けをありがとうございました。

4

1 に答える 1

0

これを確認してください:リモート処理と IpcChannel を介して ASP.NET から Windows サービスを呼び出す

于 2012-04-04T16:16:01.500 に答える