.Net Core Hangfire - Увеличить количество сотрудников

У меня есть приложение .Net Core с реализацией Hangfire.

Периодическая работа в минуту, как показано ниже:

RecurringJob.AddOrUpdate<IS2SScheduledJobs>(x => x.ProcessInput(), Cron.MinuteInterval(1));

var hangfireOptions = new BackgroundJobServerOptions
            {
                WorkerCount = 20,
            };
            _server = new BackgroundJobServer(hangfireOptions);

ProcessInput () внутренне проверяет BlockingCollection () некоторых идентификаторов для обработки, он продолжает непрерывную обработку.

Существует время, когда первые десять задач ProcessInput () продолжают обрабатываться с 10 рабочими местами, где, как и другие новые задания ProcessInput (), попадают в очередь.

С этой целью я хотел увеличить количество работников, скажем, около 50, так что будет обрабатываться 50 обработок ProcessInput () параллельно.

Пожалуйста, предложите. Благодарю.

parallel-processing,.net-core,worker,hangfire,

0

Ответов: 1


0

вы можете попробовать увеличить рабочий процесс, используя этот метод. Вы должны знать количество процессоров, работающих на ваших серверах. Чтобы получить 100 рабочих, вы можете попробовать

var options = new BackgroundJobServerOptions { WorkerCount = Environment.ProcessorCount * 25 };
app.UseHangfireServer(options);

Источник

параллельная обработка, .net-ядро, рабочий, замедленное воспламенение,
Похожие вопросы
Яндекс.Метрика