【发布时间】:2018-06-02 04:40:29
【问题描述】:
我目前对一个 ASP.NET Core 应用程序进行 CPU 采样,我向它发送大量请求(> 500K)。我看到应用程序的峰值工作集约为 300 MB,考虑到对应用程序发出的请求数量,我认为这并不大。但我观察到的是,当我在应用程序中启用某些功能时,每秒请求数会大幅下降。
问题: 我也应该进行内存分析吗?我问这个是因为即使峰值工作集约为 300MB,可能会有大量的短期对象可以由 GC 创建和收集,并且由于 GC 的工作也算作 CPU,我是否也应该进行内存分析以查看是否我分配太多了?
【问题讨论】:
-
你看到 CPU 在 GC 上花费的时间了吗?如果这是真的,那么是的,您需要进行内存分析。我建议进行时间线分析,看看线程在做什么,然后再决定。
标签: memory-profiling dottrace perfview dotmemory