如何解决asp.net核心IConfiguration的内存占用量
在asp.net核心应用程序中,当应用程序启动时,默认情况下IConfiguration
会填充从appsettings,环境变量..到azure keyVault的所有配置数据。
我有500多个配置数据(大部分来自azure keyVault)。
问题是-它的内存占用量是多少,只要应用程序运行,它是否一直保留在内存中,这是否会降低应用程序的性能?
解决方法
我认为,只要应用程序运行,这些值就一直保留在内存中,这可以使过程更健壮并提高应用程序性能。
通常,.net核心应用程序启动时,某些服务可能需要此配置数据,因此,它将读取所有配置数据以进行配置,然后,当您要使用它时,可以从配置中获取价值。变量。这种方法使过程更加健壮,例如使用依赖注入(DI)来为这些值加载服务。此外,关于KeyVault的值,机密信息将一直缓存到调用IConfigurationRoot.Reload()为止。在执行重新加载之前,应用程序不会考虑密钥库中的过期,禁用和更新的机密。更多详细信息,您可以参考此文章:
Azure Key Vault Configuration Provider in ASP.NET Core
Asp.net Core Store configurations
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。