0

我有一个网站,它使用长轮询等待服务器完成处理一些数据。但是,可能会发生超时或者用户可能会关闭他的浏览器,但服务器会继续处理它的数据。
我希望服务器在长轮询连接断开后立即停止处理数据。没有客户端会接收数据,所以这个漫长的过程没有必要继续运行......如何做到这一点?

服务器正在将文件添加到 ZIP 存档中,这需要一些时间,因为这些是合理的大文件。完成后,它将发送最终的 ZIP 文件并关闭连接。但是如果客户端在任务完成之前断开连接,服务器应该停止它的工作并再次丢弃所有内容......

4

1 回答 1

3

您应该考虑使用他的 SignalR 框架。它提供了非常舒适的事件,例如OnConnect()OnDisconnect()。在引擎盖下它与

  • 网络套接字
  • 服务器发送事件
  • 永远的框架
  • 长轮询

它使用给定环境可用的任何东西,从 WebSockets 开始。

于 2013-06-18T11:30:57.853 回答