MySql.Data.MySqlClient.CharSetMap GetEncoding的CPU使用率高

时间:2019-01-25 18:13:55

标签: mysql asp.net-core nhibernate mysql.data

我有一个调用数据库(MySQL)的API(ASPNET Core)。我使用NHibernate和MySqlData连接器。

当许多请求发送到我的API时,我遇到了导致HTTP请求错误的CPU问题(接近100%)。

我进行了转储以分析发生了什么,我发现我的大部分CPU时间都用在MySql.Data.MySqlClient.CharSetMap::GetEncoding方法中,如下所示(对于使用16%的请求,CPU使用率为7% CPU):

enter image description here

我为MySql数据库使用UTF8默认排序规则:

enter image description here

我尝试在ASPNET Core API中手动设置编码,因此可以避免GetEncoding的花费,但是我找不到解决方法(我什至不知道这样做是否可行)。

是否有任何建议可以改善我的CPU使用率?

0 个答案:

没有答案