c# - IdentityServer4 with ASP.Net Core App:性能问题 - 太慢了
问题描述
我有一个 ASP.Net Core WebApp 和一个单独的 IdentityServer4 STS 应用程序,其 UI 在 IIS 上运行。IS4 使用 PostgreSQL。
- 用户点击登录
- 应用程序尝试加载默认页面(Loading.cshtml),IS4 检查用户是否未经授权并重定向到 IS4 登录页面
- 用户通过 IS4 UI 登录并被重定向到 ASP.Net Core App
问题是
第一组调用,检查未经授权的访问并重定向到登录页面需要 8-9 秒
第二组调用,认证后重定向到 ASP.Net Core App 耗时 25-28secs
该应用程序在调试模式下运行良好,但在 Azure 中托管时我看到了此性能问题。
技术信息:
- 证书(pfx 文件)托管在 Azure 中,采用 2048/sha256 加密。有人说加密部分可能需要时间,所以将其保持在最低级别。
- IS4 中的所有商店都启用了缓存
不知道我错过了什么,但这种缓慢的性能水平是不可接受的。你能帮忙吗?
更新 2 - 已解决:找出导致性能问题的原因。
我认为是 Ids4 API 调用导致了问题,因此升级了 Azure AppService 计划,但仍然没有发现任何差异。后来注意到有近 35 多个脚本被执行。
因此,将 Azure PostgreSQL 计划从 Basic 更新到了下一层 - General Purpose,性能大幅提升。问题出在 Azure PostgreSQL through put。
解决方案
检查最新更新 - 问题出在 Azure 基础架构上。数据库是在共享资源上配置的。将硬件更新为高级版解决了该问题。
推荐阅读
- android - 为什么 gradle 没有签署我的工件
- python - 帆布,一条尾巴较细的线条
- javascript - 异步处理程序在 unhandledRejection 上开玩笑(反应)失败
- java - 自定义对象从嵌入式 FX (JFXPanel) 拖放到 Swing
- android - 由于绝对定位的底部导航栏,Android 会动态设置布局高度
- python-3.x - Python3 pkgutil get_data 用法
- javascript - 在div之外浮动文本?
- sql - Oracle SQL Count 或 Sum 以防万一查询?
- java - Java 8组对象列表,里面有列表
- html - AngularJS - 使用 ng-include 将 html 添加到页面的 ng-click 不起作用