c# – MONO 4.6.2服务器上的高CPU使用率

我更新了我的:

> Ubuntu服务器到16.04.1 LTS和
>单声道到v4.6.2

……来自官方存储库.

自更新以来,网站仍然运行良好,但大约一两天后,一些MONO进程疯狂并占用了100%的CPU.我有不同的网站;主要是简单的HTML,只需要一些代码.它随机发生,每次都在不同的网站上.这完全是随机的.

然后,我收到一个高CPU使用率的电子邮件警报,通过SSH连接,键入“htop”,并终止该过程,它恢复正常……一两天.

这绝对看起来像这个版本的MONO中的一个错误.有什么办法解决吗?还有其他人有这个问题吗?或许我应该切换到没有这种腐败的不同版本?

谢谢

编辑:2天后,每个MONO进程占用完整的CPU.

查看Apache2日志文件,我发现这与MONO有关

WARNING: WebConfigurationManager's LRUcache evictions count reached its max size
Cache Size: 100 (overridable via MONO_ASPNET_WEBCONFIG_CACHESIZE)

此外,“service apache2 restart”无法解决问题.我必须手动终止进程,或重启.

最佳答案 我玩过各种各样的MONO版本,输入“service apache2 reload”来重现高CPU使用率问题.

在MONO 4.8中,似乎碰巧发生的次数不多,但问题仍然存在.

在MONO 4.2.3.4中,问题也存在.

在Ubuntu默认出现的MONO 4.2.1中,不会发生此问题.

至于.NET Core,有些人尝试过它,并强烈建议我避免使用它,直到它变得更稳定.

所以现在,唯一的解决方案是坚持使用MONO 4.2.1

这也证实这与MONO有关,而与我的代码或服务器配置无关.

点赞