2011-02-01 52 views
0

嗨,我想创建一个Windows服务,说低速USB硬件连接到台式电脑。从其他PC和Unix讲WCF windows服务的最佳方式是什么?

我希望Windows服务的方法可以从该PC上的其他软件以及LAN上的其他PC/Unix客户端进行调用。

鉴于数据的低速性质(只是USB设备进程的偶然staus请求) - 是否有意义使用默认的http WCF绑定为此或我应该看看TCP绑定或套接字为此?

非常感谢

回答

0

也许你可以创建一个httplistener和拦截请求它来发送或接收数据。

该解决方案的强大之处在于http几乎是通用的,任何其他计算机都能够向您的服务发送请求。

[编辑],或者您可以使用同样的原因,一个宁静的WCF服务(但是客户端将不得不处理XML)

0

我会去净TCP约束力,因为它的设计和optimzed的交叉机器通信,二进制消息编码。 http会更灵活,并且可以跨客户端评估。你甚至可以在没有特殊客户端设置的情况下调用你的服

0

为什么限制自己一个绑定?您可以轻松地公开多个端点,即LAN上其他Windows客户端的NetTcp端点(这比通过HTTP协议进行通信要快);网络上非Windows客户端的BasicHttp端点;对于同一台机器上的其他服务,您甚至可以暴露一个即使在NetTcp上也能快速击败的NamedPipes端点。这就是WCF的美丽!建立服务一次,然后公开你想要的:-D

但是,请注意,如果你选择使用IIS7托管你的服务,不管你使用NamedPipes/NetTcp/BasicHttp端点如何,它都不会带来任何性能差异。无论如何都要经过HTTP。

相关问题