EDIT: This website contains a wealth of information regarding my question: http://www.enterpriseintegrationpatterns.com/patterns/messaging/index.html
I'm working on a C# based windows service that will have 2-3 instances per VM running on 10-20 VMs. The service needs to iterate through a set of customers and "do work" for each customer.
I've created a SQL Server database table that each service writes to in order to prevent redundant processing, e.g. svc1 is currently processing cust1 and no other service should process cust1 until cust1's next scheduled time.
Essentially, I have a table to storing ScheduledPollTime, LastPollEnd, LastPollStart, PollStatus, CustID
This works, but I wasn't able to find any "Best Practices" for this scenario or if this scenario has a title, e.g. Auditing Parallel Service Status, to research further.
I think my solution has serious scalability issues, which is why I wanted to get some advice on how to find best practices for my situtation.
What is the name of this process? Are there best practices?