Hi @Piyush Bhatt ,
There is not a big technical difference with hosting your web job and web app in different App Service Plan but it will cost you more. WebJobs is a feature of Azure App Service that enables you to run a program or script in the same instance as a web app, API app, or mobile app. There is no additional cost to use WebJobs.
You can always scale up your web jobs to multiple instances if they are consuming high CPU/memory. Keep in mind that WebJobs are tied directly to App Service instances, they automatically scale with the number of App Service instances you have deployed.
If you do not want your WebJob to scale up with your instance count, you can utilize the is_singleton property in the settings.job
file and set the value to true. This will ensure the Web App only runs a single instance of your WebJob. The Singleton attribute ensures that only one instance of a function runs, even when there are multiple instances of the host web app. It does this by using distributed locking. Please read this documentation to learn more about the Singleton attribute.
Hope that helps.
Best,
Grace