내 asp.net 코어 2.0 응용 프로그램에서 클레임 기반 권한을 사용하고 있으며 내 응용 프로그램 전체에서 클레임 이름을 하드 코딩하는 대신 주입 된 구성 개체 (appsettings.json)에 설정하려고합니다._config.GetSection ("section") [ "key"] 사용시 성능에 영향이 있습니까?
그러나 내가 그 도로를 뛰어 내려 가기 전에 성능에 대한 우려가 있다는 점이 궁금했습니다. 이 같은
뭔가이 같은 대
var subscriptionClaim = user.Claims.FirstOrDefault(c => c.ClaimType == _config.GetSection("ClaimNames")["BasicMembership"]);
:
var subscriptionClaim = user.Claims.FirstOrDefault(c => c.ClaimType == "basicMembership");
나는이 시점에서, 4-5 주장이 나는 다양한 지점에서 사용자로부터 추가/제거있어왔다 내 앱에서. 이름을 appsettings로 압연하는 이유는 내가 클레임 이름을 오타로 표시하지 않도록하기 위해서입니다. 그리고 앞으로 어떤 이유로 든 나는 더 쉽게 변경할 수 있습니다.
그러나 _config.GetSection("section")["key"]);
에 눈에 띄는 성능 저하가있는 경우에는 그렇지 않을 수도 있습니다. 나는 눈에 띄는 퍼포먼스 히트가 아니라, 확신하고 싶었다.
미리 감사드립니다.
https://ericlippert.com/2012/12/17/performance-rant/ – DavidG
알아내는 가장 좋은 방법은 스스로 확인하는 것입니다. 아무것도 알아 내고 깨닫는 것이 가장 좋습니다. – BugFinder
가장 좋은 방법은 다음과 같습니다. 구성 주위의 래퍼 클래스 파일에서 설정 데이터를 한 번만 검색하고 유지하도록 정적으로 만듭니다. 구성 값을 원할 때마다 래퍼 클래스를 사용하십시오. –