newrelic-dotnet-agent icon indicating copy to clipboard operation
newrelic-dotnet-agent copied to clipboard

Implement in-agent method cache for .NET framework applications

Open nrcventura opened this issue 2 years ago • 1 comments
trafficstars

Describe the story, please be clear on scope of the story.

As part of #1359 we built a prototype of how we can use an in-agent method cache to reduce the lock contention that the current AppDomain caching solution can experience. As part of this story we should do the following.

  • Implement the solution from #1359
  • Implement a configuration setting or environment variable that can be used to toggle the new caching strategy off and go back to the previous AppDomain caching strategy
  • Ensure that the profiler tests are updated for these changes
  • Run a performance test to verify that the performance is not worse

Acceptance Criteria

  • There is a setting that can be changed to re-enable the AppDomain caching strategy
  • By default the in-agent caching strategy will be enabled
  • Performance testing verify that the performance did not decrease
  • The solution applies to .NET framework applications
  • netcoreapp3.1+ applications will continue to use the current .NET core reflection strategy

Dependencies

  • [ ] Dependencies on UI
  • [ ] Dependencies on Backend
  • [ ] Other dependencies ....

Describe Design Consideration/Limitations

Additional context

Estimates

t-shirt size medium

nrcventura avatar Mar 11 '23 00:03 nrcventura

https://issues.newrelic.com/browse/NEWRELIC-7445