将数据推送到.net应用程序

时间:2012-09-18 08:39:27

标签: .net http sockets

是否可以在不使用原始TCP套接字的情况下直接从服务器向vb.net客户端应用程序发送数据?

创建一个多线程TPC套接字服务器要比使用一些带有get和post命令的简单php脚本困难得多。我知道使用http客户端必须请求数据,所以如果我想快速响应新数据,我将不得不经常轮询,我想避免这种情况。

我的要求基本上是响应尽快到达服务器的新内容,同时尽量减少数据传输。什么协议最适合这个或者我必须使用原始TCP套接字?

我仍然必须创建服务器,所以我可以用任何语言来完成它,但我希望尽可能简单。我正在使用亚马逊网络服务,因此我认为缩放或太多连接不会成为问题。

2 个答案:

答案 0 :(得分:1)

  1. 你会有很多客户还是只有一个?
  2. “Raw”TCP套接字在.NET中并不那么可怕(见下文)
  3. 延迟是一个至关重要的问题,如果是这样,是什么阈值?
  4. 您的邮件投递是否至关重要?
  5. 请查看listen for data on TCP port C#,了解如何做您想做的事情。

    编辑:

    您也可以使用WCF(客户注册服务器进行回调),SignalR,如Colin建议或NServiceBus

答案 1 :(得分:1)

你试过SignalR吗?斯科特汉塞尔曼有一篇关于这个http://www.hanselman.com/blog/AsynchronousScalableWebApplicationsWithRealtimePersistentLongrunningConnectionsWithSignalR.aspx的优秀文章。