2011-02-01 5 views
0

こんにちは私はデスクトップPCに接続されたUSBハードウェアの低速ピースに話すWindowsサービスを作成したいと思います。他のPCやUnixからWCFウィンドウサービスに話すには?

私は、WindowsサービスのメソッドをそのPC上の他のソフトウェアやLAN上の他のPC/Unixクライアントから呼び出し可能にしたいと思います。

データの低速な性質(USBデバイスの進行状況を示すちょっとしたstaus要求)がある場合、デフォルトのhttp WCFバインディングを使用するのが理にかなっているのですか、このためにTCPバインディングまたはソケットを調べるべきですか?

多くのおかげ

答えて

0

は、多分あなたは、データを送信または受信することにHttpListenerをインターセプトし、要求を作成することができます。

このソリューションの強力な点は、httpがほぼ普遍的で、他のどのコンピュータもサービスにリクエストを送信できることです。

[編集]またはあなたが同じ理由で安らかなWCFサービスを使用することができます(ただし、クライアントがXMLに対処する必要があります)

0

それはクロス用に設計されており、optimzedていますように私は、バインディングネットTCPのために行くだろうマシン通信、バイナリメッセージエンコーディング。 httpはより融通性があり、クライアントを評価することができます。特別なクライアントの設定をせずにサービスを呼び出すこともできます。

0

なぜあなたは1つのバインディングに制限されますか? LAN上の他のWindowsクライアント用のNetTcpエンドポイントである複数のエンドポイントを簡単に公開できます(HTTPプロトコル経由での通信よりも高速です)。ネットワーク上の非ウィンドウクライアント用のBasicHttpエンドポイント。同じマシン上の他のサービスでは、NetTcpに勝るNamedPipesエンドポイントを公開することさえできます。それがWCFの美しさです!一度サービスをビルドし、あなたが望むものを公開してください:-D

IIS7でサービスをホストすることを選択した場合、NamedPipes/NetTcp/BasicHttpエンドポイントを使用するかどうかにかかわらず、パフォーマンスに違いはありませんとにかくHTTPを通過します。

関連する問題