所以我在过去使用过WCF,我知道你不仅可以将它用于Web服务,还可以用于持久的TCP客户端/服务器应用程序,但我从未真正使用过它。
我正在研究为本地运行的.NET创建客户端/服务器应用程序,即服务器和多个客户端将在同一台机器上运行。不会有大量的同时连接,最多可能有50个。每个请求传输的数据量不会太多,大多数是40-100字节左右的小对象。但是会有很多不同的对象类型,所以我更喜欢一个使序列化变得简单的解决方案。
最大的担忧是我需要快速连续发送许多数据包,而且我不能承受太多的延迟。理想情况下,我需要一个100字节数据包的往返时间小于1毫秒(假设没有处理时间用于处理服务器上的数据)。
我知道这可以使用基于Winsock / IOCP的本机解决方案,因为我有一个适用于另一个项目的解决方案,但我不知道这是否是WCF可以处理的内容,因为我不知道有多少处理每个请求/响应或其使用的异步IO都涉及开销。
那么,您认为WCF可以为此工作吗,还是需要创建基于套接字的低级解决方案?