Go to file
Ryan Nowak a5658a8c95
Fix #6102 - Intense CPU utilization on page change (#6542)
* Fix #6102 - Intense CPU utilization on page change

The issue here was that every time a Razor Page changed, we would
subscribe an additional time to the endpoint change notifications. This
means that if you tweaked a page 30 times, we would update the address
table 31 times when you save the file. If you were doing a lot of editing
then this would grow to a really large amount of computation.

The fix is to use DataSourceDependentCache, which is an existing utility
type we developed for this purpose. I'm not sure why it wasn't being
used for this already. We're already using DataSourceDependentCache in a
bunch of other places, and it's well tested.

I also tweaked the stucture of this code to be more similar to
EndpointNameAddressScheme. This involved some test changes that all
seemed like good cleanup. The way this was being tested was a little
wonky.
2019-01-13 21:03:26 -08:00
.azure/pipelines Switch agent queues used during Windows builds 2019-01-11 15:16:57 -08:00
.config
.github
.vscode
build Merge branch 'release/2.2' 2019-01-11 07:20:00 -08:00
docs Merge branch 'release/2.2' 2019-01-11 07:20:00 -08:00
eng Switch agent queues used during Windows builds 2019-01-11 15:16:57 -08:00
src Fix #6102 - Intense CPU utilization on page change (#6542) 2019-01-13 21:03:26 -08:00
.editorconfig
.gitattributes
.gitignore Merge branch 'release/2.2' 2019-01-11 07:20:00 -08:00
.gitmodules
CONTRIBUTING.md
Directory.Build.props Merge branch 'release/2.2' 2019-01-11 07:20:00 -08:00
Directory.Build.targets Merge branch 'release/2.2' 2019-01-11 07:20:00 -08:00
LICENSE.txt
NuGet.config
README.md
THIRD-PARTY-NOTICES.txt
build.cmd build.cmd/sh changes (#5958) 2018-12-20 16:52:15 -08:00
build.ps1 Switch agent queues used during Windows builds 2019-01-11 15:16:57 -08:00
build.sh build.cmd/sh changes (#5958) 2018-12-20 16:52:15 -08:00
dockerbuild.sh
global.json Merge branch 'release/2.2' 2019-01-11 07:20:00 -08:00
korebuild-lock.txt Merge branch 'release/2.2' 2019-01-11 07:20:00 -08:00
korebuild.json Switch agent queues used during Windows builds 2019-01-11 15:16:57 -08:00
restore.cmd build.cmd/sh changes (#5958) 2018-12-20 16:52:15 -08:00
restore.sh build.cmd/sh changes (#5958) 2018-12-20 16:52:15 -08:00
startvs.cmd Merge branch 'release/2.2' 2019-01-05 00:34:13 -08:00
version.props

README.md

ASP.NET Core

ASP.NET Core is an open-source and cross-platform framework for building modern cloud based internet connected applications, such as web apps, IoT apps and mobile backends. ASP.NET Core apps can run on .NET Core or on the full .NET Framework. It was architected to provide an optimized development framework for apps that are deployed to the cloud or run on-premises. It consists of modular components with minimal overhead, so you retain flexibility while constructing your solutions. You can develop and run your ASP.NET Core apps cross-platform on Windows, Mac and Linux. Learn more about ASP.NET Core.

Get Started

Follow the Getting Started instructions in the ASP.NET Core docs.

Also check out the .NET Homepage for released versions of .NET, getting started guides, and learning resources.

How to Engage, Contribute, and Give Feedback

Some of the best ways to contribute are to try things out, file issues, join in design conversations, and make pull-requests.

Reporting security issues and bugs

Security issues and bugs should be reported privately, via email, to the Microsoft Security Response Center (MSRC) secure@microsoft.com. You should receive a response within 24 hours. If for some reason you do not, please follow up via email to ensure we received your original message. Further information, including the MSRC PGP key, can be found in the Security TechCenter.

These are some other repos for related projects:

Code of conduct

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.