Heart Beat设计模式是什么?它与ASP.NET会话有什么关系?
答案 0 :(得分:4)
Web应用程序从用户的浏览器接收HTTP请求。它保存会话信息,以便(例如)购物车或在线游戏的状态可以保留在这些请求之间。
用户在午餐时间,当天回家或休假两周时都会使浏览器会话保持活动状态。因此,会话通常会有一些不活动超时,否则最终会为很多用户提供大量服务器资源。
描述的心跳模式here使用Ajax(异步)调用来告诉服务器用户仍然在这里。它可能很有用,因为在将新请求发送到服务器之前,富Internet应用程序通常会允许相当多的本地工作 - 因此当用户愉快地使用该应用程序时,存在会话超时的危险。
实施需要相当聪明。例如,如果你只是每三十秒向服务器发送一个ajax调用,说“Yep still here”将在用户休假两周时继续。因此,只有在用户积极使用该应用程序时才会发送心跳。
将有用的信息“捎带”到心跳请求和响应中可能是非常合理的,例如将自动保存数据发送到服务器,或检索更新的服务器信息或“新闻”。
答案 1 :(得分:1)
这种模式是关于保持ASP.NET会话的活跃。
查看Heart Beat Design Pattern - Keeping Webpage Session Alive以了解.NET中的实现。