Wir haben kürzlich unsere Teaminfrastruktur in einem AD auf Windows 10 aktualisiert.
Alles funktioniert einwandfrei, außer: In einigen Situationen ist eine langsame Leistung zu beobachten. Als erstes wurde festgestellt, dass unser Post-Compiling Powershell-Skript in VS2017 langsamer lief als unter Windows 7. Auch Google war nicht hilfreich - aber wir hatten jetzt keine Zeit, weitere Nachforschungen anzustellen. Kürzlich haben wir auch unsere CI-Build-Farm aktualisiert (TeamCity als CI-Server). Dort konnten wir die Build-Zeiten um über 100% verlängern - ein Referenz-Build benötigte vor dem Upgrade 7 Minuten, nachdem es bei 17 Minuten 2005 geblieben war.
Recherchen hier bei StackExchange und Google waren nicht aussagekräftig. Etwas mehr Nachforschungen haben ergeben, dass wir, wenn wir den Agent mit einem lokalen Konto auf dem Computer ausführen (noch in AD), Build-Zeiten um die 8.50 Uhr erhalten.
Der Buildjob enthält verschiedene MSBuild-Schritte, nUnint-Runner und einige Powershell-Schritte. Keine Netzwerkaktivität - alles wird lokal auf dem Agenten ausgeführt. Ein MSBuild-Schritt dauerte zuvor 36s und jetzt 1m02s. Gleiches gilt für den NUint-Schritt - 30s vs 1m24s (alle mit dem AD-User).
Irgendwelche Vorschläge, wo das Problem liegt?
quelle
Antworten:
Die Lösung gefunden. Es war eine Kombination aus Windows 10, MSBuild und unserer Unternehmensinfrastruktur.
TeamCity schließt den MSBuild-Aufruf ab. Dieser Wrapper oder eine Windows-Komponente versucht, mit "akamaitechnologies" zu kommunizieren - ein CDN, von dem Microsoft weiß, dass es für die Telemetrie verwendet wird. Da sich unser Firmennetzwerk hinter einem Proxy befindet, muss die Anforderung eine Zeitüberschreitung aufweisen. Beim Domänenbenutzer war diese Zeitüberschreitung überraschenderweise länger als bei den lokalen Konten. Die Lösung (warum auch am alten lokalen Account gearbeitet wurde) bestand darin, den System-Proxy zu aktivieren. Wissen Sie, dass die Anfrage sofort eine "abgelehnte" Antwort vom Proxy erhält. Die Bauzeiten sanken auf normale Zeiten.
Vielen Dank an alle, die versucht haben, mir bei diesem Problem zu helfen!
quelle