Windows 8.1. IIS 8.5. SignalR Versionen:SignalR lässt IIS nach dem Wiederaufbau hängen
<package id="Microsoft.AspNet.SignalR" version="2.1.2" targetFramework="net451" />
<package id="Microsoft.AspNet.SignalR.Core" version="2.1.2" targetFramework="net451" />
<package id="Microsoft.AspNet.SignalR.JS" version="2.1.2" targetFramework="net451" />
<package id="Microsoft.AspNet.SignalR.SystemWeb" version="2.1.2" targetFramework="net451" />
Jedes Mal, wenn ich mein Projekt/Lösung neu zu erstellen, IIS Spitzen max CPU-Auslastung und ich kann meine Seite nicht neu laden. Ich habe procmon.exe und meldet es eine enorme Menge (> 20 000/s) von „RegOpenKey/RegQueryKey“ Operationen wie diese hier:
Date & Time: 19.11.2014 10:47:20
Event Class: Registry
Operation: RegQueryKey
Result: SUCCESS
Path: HKLM
TID: 23272
Duration: 0.0000059
Query: HandleTags
HandleTags: 0x0
Date & Time: 19.11.2014 10:47:20
Event Class: Registry
Operation: RegOpenKey
Result: REPARSE
Path: HKLM\SYSTEM\CurrentControlSet\Services\SignalR\Performance
TID: 23272
Duration: 0.0000121
Desired Access: Read
Date & Time: 19.11.2014 10:47:20
Event Class: Registry
Operation: RegOpenKey
Result: NAME NOT FOUND
Path: HKLM\System\CurrentControlSet\Services\SignalR\Performance
TID: 23272
Duration: 0.0000062
Desired Access: Read
Dies sind die Schritte, die ich dieses Problem zu reproduzieren, verwenden:
- Alles funktioniert gut.
- Ich schreibe einige Code und kompilieren
- SignalR macht einen Reconnect mit WebSocket Transport und bekommt diese Antwort in der Antwort-Header: "HTTP/1.1 101 Switching Protocols"
- ich eine Anfrage und IIS Worker tun hängt Prozess und nie kommt zurück ODER ich warte 2-3 Minuten und die Dinge funktionieren wieder.
Ich erfahre das auch in IIS Express. Normalerweise behebe ich dies, indem ich den IIS-Arbeitsprozess abbringe und neu lade. Ist das ein Berechtigungsproblem? Derzeit läuft der Anwendungspool unter meinem lokalen Benutzer, aber ich habe die Identität des Anwendungspools mit den gleichen Ergebnissen versucht. Was sollte in "HKLM \ System \ CurrentControlSet \ Services \ SignalR \ Performance" sein? Momentan gibt es keinen solchen Registrierungsschlüssel auf meinem Computer.
Die Anfragen sind kontinuierlich für die Zeit, die es hängt, ja. Ich habe ~ 13 000 in 0,3 Sekunden aufgenommen - alles vom selben Typ wie oben erwähnt. Die Installation des Leistungsindikators hat geholfen, also vielen Dank dafür! – perkrihe