How to make active services highly available?
Posted
by Jader Dias
on Stack Overflow
See other posts from Stack Overflow
or by Jader Dias
Published on 2010-04-16T20:32:08Z
Indexed on
2010/04/20
0:33 UTC
Read the original article
Hit count: 298
I know that with Network Load Balancing
and Failover Clustering
we can make passive services highly available. But what about active apps?
Example: One of my apps retrieves some content from a external resource in a fixed interval. I have imagined the following scenarios:
- Run it in a single machine. Problem: if this instance falls, the content won't be retrieved
- Run it in each machine of the cluster. Problem: the content will be retrieved multiple times
- Have it in each machine of the cluster, but run it only in one of them. Each instance will have to check some sort of common resource to decide whether it its turn to do the task or not.
When I was thinking about the solution #3 I have wondered what should be the common resource. I have thought of creating a table in the database, where we could use it to get a global lock.
Is this the best solution? How does people usually do this?
By the way it's a C# .NET WCF app running on Windows Server 2008
© Stack Overflow or respective owner