Base solution for your next web application
Open Closed

Multiple Jobs option #10343


User avatar
0
mahendra created

Prerequisites

Please answer the following questions before submitting an issue. YOU MAY DELETE THE PREREQUISITES SECTION.

  • What is your product version? 10.3
  • What is your product type (Angular or MVC)? Angular
  • What is product framework type (.net framework or .net core)? .Net Core

We have about 5000 tenants created in our software. Each of the tenants can scheudle the various jobs in the application using the interface that we have provided. Each job needs to execute a mentod and then geneate and send email to the customer. The scedhule set by each tenant could be different.

I need a suggestion. Should we use the Hangfire to schedule each job. What if we have about 2000 tenants schedule the report for the same time. Will hangfire will be able to execute all jobs in parallel and send the report output the all the customers. What is best suited solution for this case.


1 Answer(s)
  • User Avatar
    0
    ismcagdas created
    Support Team

    Hi @mahendra

    First of all, if you have such high demand I suggest you to use Hangfire or Quartz. Hangfire is not a magical library, it can execute your background jobs but it will not execute them faster. We haven't made such load tests on Hangfire but If you expect such high operation counts, maybe instead of placing these into your main web application, you can create a new application (Web App Or Windows Service) and move your BackgroundJob execution to this new app. This new app can use the other layers of your web app like EF Core and AppServices.