2011-12-16 26 views
3

私はwcfプログラミングの新人です。私は小さなプロジェクトに取り組んでおり、net.tcpポート共有に問題があります。私は.net framework 4とiis 7を使用しています。IIS 7/WAS上のWCF net.tcpポート共有

私は2つのwcfサービス(serviceAとserviceB)がIIS上の別々のWebサイトで私たちのサーバー上でホストされています。各Webサイトには独自の.svcファイルweb.configとbinがあります。私は別のnet.tcpポート上でこれらのサービスをそれぞれ持っている場合、問題はありませんし、私は自分のPC上のビジュアルスタジオからそれぞれのサービス参照を追加することができます。サービスは正常に動作します。

しかし私たちはすぐにもっと多くのサービスを提供するプロジェクトを開始する予定で、私はserviceAとserviceBをポート共有にしようとしているので、それぞれのためにTCPポートを開く必要はありません。私は、同じポート上に設定した場合、私は第2のサービスにアクセスしようとしたとき、私は最初に私が追加したサービスが、ときにアクセスすることができ、同じポートに追加し、私は次のエラーを取得する:

Metadata contains a reference that cannot be resolved: 'net.tcp://myserver/serviceB.svc'. The socket connection was aborted. This could be caused by an error processing your message or a receive timeout being exceeded by the remote host, or an underlying network resource issue. Local socket timeout was **. An existing connection was forcibly closed by the remote host If the service is defined in the current solution, try building the solution and adding the service reference again.

私は働くことができません何がうまくいかないのか。私は、件名に検索するのでは多くのことを行っていると私は、次のサービスが実行されていることを確認してきた:

Windowsプロセスアクティブ化サービス Net.Tcpポート共有サービス Net.Tcpリスナーアダプタ

を加えてネットで.tcpは、Webサイトの詳細設定で有効になっているプロトコルです。私の現在の最良の推測は、IISマネージャーでnet.tcpバインディングをどのように定義したかと関係があるかもしれないということです。両方の独立したサービスを実行している私のウェブサイトには次のものがあります:808:*(net.tcp)これは正しいですか?

前述のように、tcpサービスは2つの別々のポートに設定するとうまく動作するので、問題はポート共有に関連している必要があります。アドバイスに非常に感謝します

答えて

3

OK私が持っていた問題を発見しました。 IISで私は各サービスを独自のWebサイトとして設定し、それらの異なるWebサイトをポート共有にしようとしていました。これはうまくいかないでしょう。

しかし、私はただ1つのウェブサイトを設定して、私のサービスをウェブサイトのseaprateアプリケーションとして追加すると、ポートの共有が機能することを発見しました。この方法では、1つのWebサイトでアプリケーションとして複数のサービスを利用できます。

関連する問題