我們剛開始在MVC應用程序中使用SignalR,現在由於高平均響應時間,我們得到了一堆警報。我懷疑這是誤導,因爲應用程序沒有遇到性能下降。看來SignalR使用這個URL來建立連接。這個url不是項目的控制器/動作,只是js文件中內置的SignalR代碼。 jquery.signalR-2.2.1.js是該文件。我懷疑它只是將WebSocket連接打開,而它們位於這個頁面上,它正在歪曲我們的數字。這是否準確?如果是這樣,有沒有辦法將它從應用程序洞察中濾除?MVR偏差中的SignalR應用見解
這是櫃檯。 這是預期的行爲?
這裏是signalR jQuery代碼的地方建立它的URL:
// BUG #2953: The url needs to be same otherwise it will cause a memory leak
getUrl: function (connection, transport, reconnecting, poll, ajaxPost) {
/// <summary>Gets the url for making a GET based connect request</summary>
var baseUrl = transport === "webSockets" ? "" : connection.baseUrl,
url = baseUrl + connection.appRelativeUrl,
qs = "transport=" + transport;
if (!ajaxPost && connection.groupsToken) {
qs += "&groupsToken=" + window.encodeURIComponent(connection.groupsToken);
}
if (!reconnecting) {
url += "/connect";
} else {
if (poll) {
// longPolling transport specific
url += "/poll";
} else {
url += "/reconnect";
}
if (!ajaxPost && connection.messageId) {
qs += "&messageId=" + window.encodeURIComponent(connection.messageId);
}
}
url += "?" + qs;
url = transportLogic.prepareQueryString(connection, url);
if (!ajaxPost) {
url += "&tid=" + Math.floor(Math.random() * 11);
}
return url;
},
這可以是或者可以不是與你確切的問題有關,但是如果你在SignalR連接的地方打開3個或更多的窗口,它將掛起,直到有一個插座可用(IE。你關閉你的多個窗口中的一個t連接),然後頁面將加載。我想知道這是否是「響應時間」很長的原因? – Luke
@Luke感謝您的反饋。我會跟進用戶。我不認爲這是他們的行爲,但會檢查。 –