Click here to Skip to main content
15,867,453 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more: , +
I have a scenario where i have a asp.net Web application and users will trigger long running jobs from my web app.
Each user task will lead to multiple threaded and long running resource hungry tasks. And user will be shown logs of progress from database.
I want my worker servers to be plug and play and share/balance the load. "I don't want single server to do the long running jobs, I want multiple servers doing it"
What would be the best way to approach this ? I know i can do all the pooling and invent my own way but let me hear your experience! Thanks

What I have tried:

I have seen solutions like hangfire, windows service etc. 
Posted
Updated 8-Jan-17 22:33pm

1 solution

You can use service discovery and spin up multiple processes. So from asp.net application you will check with service discovery and identify which all service are available then after getting this information you will redirect your request to service than is available to process a request (set or get required info).

Reference Link: Horizontal scaling application using Proxy & Service Discovery[^]

For an application which will process this job, you need to make sure they get registered with Service Discovery and Unregister when they are no longer available.

If you have any limitation using Service Discovery, you can depend on Message Queue

Reference link : Horizontal scaling .net C# / NodeJS, MongDB with Micro Services[^]
 
Share this answer
 
Comments
mehdimughal 11-Jan-17 3:29am    
Thank you Ashwin Shetty for your answer. Let me try these solutions, if they fit into my scenario.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900