Signalr 信号机';长轮询';同时发送多个请求
我为我的网站写了一个简单的“分析”跟踪工具,它有布尔列,如Signalr 信号机';长轮询';同时发送多个请求,signalr,long-polling,Signalr,Long Polling,我为我的网站写了一个简单的“分析”跟踪工具,它有布尔列,如 已访问门店 已访问\u主页 签出\u已启动 main视频\u播放 MainVideo\u已完成 我也在使用Google Analytics,但我想在montor活动中找到一个次要位置 我主要在Chrome上测试我的应用程序,默认情况下Chrome将使用web套接字。我切换到长轮询,因为我希望能够在Fiddler中监视请求 中心的工作方式非常简单。当特定事件完成时,信号器客户端发送设置标志(列)的事件。因此,在调用时,它会执行以下操作:
已访问门店
已访问\u主页
签出\u已启动
main视频\u播放
MainVideo\u已完成
我也在使用Google Analytics,但我想在montor活动中找到一个次要位置
我主要在Chrome上测试我的应用程序,默认情况下Chrome将使用web套接字。我切换到长轮询,因为我希望能够在Fiddler中监视请求 中心的工作方式非常简单。当特定事件完成时,信号器客户端发送设置标志(列)的事件。因此,在调用时,它会执行以下操作:
- 为用户查找行-如果不存在,则创建
- 设旗
- 保存行
是否有一种方法可以将信号器长轮询配置为而不是一次发送所有请求?或者以其他方式依次执行请求(如ASP.NET在使用SessionState时所做的)。听起来更深层次的问题是,您的数据库层不允许并发访问,也许您希望首先关注这一点。这是我最初的想法,但第一个请求(会话中不存在数据库行)会发生什么情况就是在同一时间创建两个内存行,然后插入。数据库检测到主键冲突或死锁,但这似乎不必要地占用了资源。我不确定db还能做些什么。即使是空行的原子创建也只能部分解决第一个事件的问题