There are cases where we might need to solve the problem using some background processes running through the day. Let’s take a look at a real-world scenario.

Employees in a factory have different shifts, and they come and go out throughout the day. We need to determine their duration throughout the day using different logistics. We also have to continuously run schedulers that run processes in the backend throughout the day.

Modern web applications require all these batch processes, scheduled tasks, and long-running processes, but the problem is that running these on IISInternet Information Services can interrupt the app pool because they also rely on threads. WebJobs were designed to solve this problem.

Note: IIS can be used to monitor a blob storage account for new items, and whenever it finds a new item inside, it can start its processing.

Azure WebJob can keep on running at different intervals consuming messaging systems such as storage queues or Azure Service Bus.

To run WebJobs, we need to have an App Service plan to run multiple WebJobs in an App Service instance. Deploying a WebJobs resource is relatively accessible since it’s deployed using the same infrastructure as any App Service resource. There are various deployment options available as well, such as source control, FTPFile Transfer Protocol, and Visual Studio.

Get hands-on with 1200+ tech skills courses.