IIS 工作进程忙于使用 Hangfire
IIS Worker Process busy using Hangfire
我在我的 MVC 网络应用程序中使用 Hangfire。我是这样配置的:
GlobalConfiguration.Configuration
.UseMongoStorage(mongoConnectionString, mongoDatabaseName);
app.UseHangfireServer();
当我 运行 我看到 IIS Worker Process
的应用程序经常占用近 40% CPU。
删除它会使应用程序正常工作。
怎么了?
Hangfire.Mongo 因为版本 0.2.2 使用新版本的 mongocsharpdriver 包迁移到异步 API 与 Mongo 交谈时。 Hangfire 仍然使用同步方法,看起来 "sync over async" wrapper.
中有错误
一位用户报告说在设置以下选项后一切正常。
CountersAggregateInterval = TimeSpan.FromMinutes(5);
JobExpirationCheckInterval = TimeSpan.FromHours(1);
但是,目前还没有修复程序,另一种选择是将 Hangfire.Mongo 软件包降级到以前的版本。请参阅相关GitHub issue.
我在我的 MVC 网络应用程序中使用 Hangfire。我是这样配置的:
GlobalConfiguration.Configuration
.UseMongoStorage(mongoConnectionString, mongoDatabaseName);
app.UseHangfireServer();
当我 运行 我看到 IIS Worker Process
的应用程序经常占用近 40% CPU。
删除它会使应用程序正常工作。
怎么了?
Hangfire.Mongo 因为版本 0.2.2 使用新版本的 mongocsharpdriver 包迁移到异步 API 与 Mongo 交谈时。 Hangfire 仍然使用同步方法,看起来 "sync over async" wrapper.
中有错误一位用户报告说在设置以下选项后一切正常。
CountersAggregateInterval = TimeSpan.FromMinutes(5);
JobExpirationCheckInterval = TimeSpan.FromHours(1);
但是,目前还没有修复程序,另一种选择是将 Hangfire.Mongo 软件包降级到以前的版本。请参阅相关GitHub issue.