почему приложение .net core создает слишком много вызовов futex в linux - PullRequest
0 голосов
/ 11 октября 2018

каждый. У меня проблемы с этой проблемой в течение нескольких дней, у меня есть сайт .net core, который работает за nginx на centos 7 с ядром 4 процессора, обычно это дает 502 ошибки шлюза.какие-либо предложения?

[root @ web10 ~] # dotnet --info

.NET Core SDK (отражает любой global.json): Версия: 2.1.403 Фиксация: 04e15494b6

Среда выполнения: имя ОС: centos Версия ОС: 7 Платформа ОС: Linux RID: centos.7-x64 Базовый путь:
/usr/share/dotnet/sdk/2.1.403/

Хост (полезно для поддержки): Версия: 2.1.5 Фиксация: 290303f510

Установленные SDK Core Core: 2.1.403 [/ usr / share / dotnet / sdk]

.NETУстановлены основные среды выполнения: 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

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

[root @ web10 ~] # top -p 5654

PID PR пользователя NIR VIRT RES SHR S% CPU% MEM TIME + КОМАНДА 5654 root 20 0 29,2g 881356 41872 S 140,0 11,0 450: 36,85 dotnet

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

% времени секунд ошибки использования / вызовов вызовов syscall


98.37 2830.634557 27590 102597 33013 futex

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

показывает много ошибок futex, например:

17992 <... futex возобновлен>) = -1EAGAIN (Ресурс временно недоступен)

...