为什么.net核心应用在Linux上创建太多的futex调用

时间:2018-10-11 04:12:00

标签: linux .net-core futex

每个人。我在服务器时代一直在这个问题上遇到麻烦,我有一个.net核心网站在具有4 cpu核心的centos 7上在nginx后面运行,它通常会显示502错误的网关错误。有什么建议吗?

[root @ web10〜]#dotnet --info

  

.NET Core SDK(反映任何global.json):版本:2.1.403   提交:04e15494b6

     

运行时环境:OS名称:centos OS版本:7 OS   平台:Linux RID:centos.7-x64基本路径:
  /usr/share/dotnet/sdk/2.1.403 /

     

主机(可用于支持):版本:2.1.5提交:290303f510

     

.NET Core SDK已安装:     2.1.403 [/ usr / share / dotnet / sdk]

     

.NET Core运行时已安装:Microsoft.AspNetCore.All 2.1.5   [/usr/share/dotnet/shared/Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.App 2.1.5   [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 2.1.5   [/usr/share/dotnet/shared/Microsoft.NETCore.App]

     

要安装其他.NET Core运行时或SDK,请执行以下操作:
  https://aka.ms/dotnet-download

[root @ web10〜]#ps -ef | grep dotnet

  

根5654 1 99 05:40 07:14:00 / usr / bin / dotnet   /data/www/api/test.API.dll

[root @ web10〜]#top -p 5654

  

PID用户PR NI VIRT RES SHR S%CPU%MEM TIME +   命令5654根20 0 29.2g 881356 41872 S 140.0 11.0   450:36.85 dotnet

[root @ web10〜]#strace -f -c -p 5654

  

%时间秒usecs / call呼叫错误syscall

     
     

98.37 2830.634557 27590 102597 33013 futex

[root @ web10〜]#strace -f -p 5654 -e trace = network

它显示了许多类似futex的错误:

  

17992 <... futex已恢复>)= -1 EAGAIN(临时资源   不可用)

0 个答案:

没有答案