提问人:Mohab Alnajjar 提问时间:11/11/2023 更新时间:11/15/2023 访问量:69
ASP.NET API 在 Ubuntu 上消耗更多内存
ASP.NET API consumes more memory on Ubuntu
问:
我有一个 ASP.NET 核心 API 应用程序,我需要在 Ubuntu 上运行的生产服务器上发布。 发布应用程序并在 MS Windows 上运行它时,它会占用合理的内存量。
当我将应用程序移动到我的生产服务器时,显示与 Windows 相比,它占用了大量内存。htop
那么为什么会这样呢? 另一个问题:为什么有多个操作系统进程运行同一个应用程序?
答:
0赞
Mohab Alnajjar
11/15/2023
#1
问题出在我使用的 .NET 版本上:.NET 7.0。 请参阅 linux Github 上的 dotnet 7 中的大量内存使用率回归问题。
对于运行同一应用的操作系统进程:
线程:由内核作为进程实现。也就是说,没有表示线程的专用数据结构。相反,线程是与其他进程共享某些资源(如内存或信号处理程序)的进程。内核通过线程 ID (TID) 和线程组 ID (TGID) 来标识线程,其语义是共享的 TGID 值意味着多线程进程(在用户领域;也有内核线程,但这超出了我们的范围)。[豪森布拉斯,迈克尔。学习现代 Linux。第02章。
评论