Tag: keep alive

使用SignalR Hubs,连接会在一段时间后丢失 – 为什么?

在我的SignalR应用程序中,回调在页面上按预期触发。 如果页面停留一段时间,则在刷新之前不再在该页面上调用回调。 我怀疑这可能是由于网站的会话到期(使用客户端的会话ID来调用客户端通知)。 我在这里阅读了关于KeepAlivefunction的信息,并且可以在SignalR代码中看到它的一些引用。 我不清楚是否需要实施客户端keep-alive,如果需要,如何实现?

如何收听保持活跃的HttpResponseMessage直到它关闭?

我正在使用HttpClient向远程Web服务器发送异步POST请求。 该远程Web服务器响应Connection标头设置为keep-alive 。 最终,它将关闭连接。 我无法弄清楚怎么做是继续接收数据,直到连接设置为关闭。 例如,请考虑以下代码: HttpClient client = new HttpClient(); string requestUri = …; //My GET uri string content = …; //url-encoded contents of the request HttpResponseMessage response = await client.PostAsync(requestUri, new StringContent(content)); 在上面的代码中, response将Connection标头设置为keep-alive 。 我找不到HttpResponseMessage上的任何成员似乎在收到第一个keep-alive后给我任何继续接收信息的方法。 在Connection关闭之前,我无法弄清楚如何继续接收响应。 我能够找到处理发送keep-alive请求的各种资源。 那不是我的问题。 我的问题是接收/处理来自服务器的keep-alive响应。 如果我能提供更多信息以便改进这个问题,请告诉我。

使用C#(。net)下的HTTP服务器保持活动套接字如何发送多个查询?

Noob的问题。 所以我尝试这个代码在同一个套接字上多次调用http服务器资源: public void TryReuseSameSocket(){ var addr = Dns.GetHostAddresses(“stackoverflow.com”); var socket = new Socket(SocketType.Stream, ProtocolType.Tcp); try { // i thought that i must to use this option socket.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.KeepAlive, 1); socket.Connect(addr, 80); var bigbuff = new byte[10000]; for (var i = 0; i < 20; i++) { //now i try to call some URL many […]

在C#(.NET 4.6)中关闭保持活动的FTP或FTPS连接的最佳方法?

在C#(.NET 4.6)中,我使用保持活动的FTPS连接来下载循环中的几个文件,如下所示: foreach (string filename in filenames) { string requestUriString = GetFtpUriString(myDir) + “/” + filename; FtpWebRequest request = (FtpWebRequest)WebRequest.Create(requestUriString); request.Method = WebRequestMethods.Ftp.DownloadFile; request.Credentials = new NetworkCredential(myFtpsUsername, myFtpsPassword); request.EnableSsl = true; request.ConnectionGroupName = myConnectionGroupName; request.KeepAlive = true; … do something … } 循环完成后,我想关闭连接。 我找不到直接的方法来实现这一目标。 我想出的是以下解决方法,它会向FTP服务器发出另一个低占用空间的请求,这次KeepAlive标志设置为false : FtpWebRequest request = (FtpWebRequest)WebRequest.Create(GetFtpUriString(myDir)); request.Method = WebRequestMethods.Ftp.PrintWorkingDirectory; request.Credentials = […]

c#ping一个网站? (保持活力服务)

有没有一种方法在c#中能够每隔15分钟ping一个url并从服务器获得响应? 我想尝试看看.net是否可用于构建一个简单的工具,让asp.net网站调用重新构建,以便第一个用户在应用程序启动时不会产生负载惩罚。 或者,如果有人有另一种方法来实现同一目标……想法? 提示? 想法?

GC.KeepAlive与使用

在他关于防止应用程序的多个实例的文章中 ,Michael Covington提出了以下代码: static void Main() // args are OK here, of course { bool ok; m = new System.Threading.Mutex(true, “YourNameHere”, out ok); if (! ok) { MessageBox.Show(“Another instance is already running.”); return; } Application.Run(new Form1()); // or whatever was there GC.KeepAlive(m); // important! } 他解释说,GC.KeepAlive(m)是防止垃圾收集器尽早收集互斥锁所必需的,因为没有额外的引用。 我的问题:将使用互斥锁包装做同样的事情吗? 也就是说,以下是否也会阻止GC从我身下拉出地毯? static void Main() // args are OK […]

WebClient是否使用KeepAlive?

我需要向单个主机发出大约50个HTTP请求(API调用)。 性能很重要,所以我想使用HTTP KeepAlive。 WebClient是否支持此function?

KeepAlive与WCF和TCP?

我有一个Windows服务托管高级WCF服务,通过TCP(netTCP)与protobuf.net进行通信,有时也使用证书。 receiveTimeout设置为无限,永不丢弃由于不活动而导致的连接。 但从我的理解,无论如何都可以删除连接,所以我创建了一个简单的双向keepalive服务方法,客户端每9分钟调用一次以保持连接活动。 连接永远不会中断是非常重要的。 这是正确的方法吗? 或者我可以简单地删除我的保持,因为receiveTimout设置为无限? 编辑:WCF服务的当前app.config: http : //1drv.ms/1uEVKIt