Что использовать вместо оператора «блокировки», когда код выполняется на нескольких машинах?

Оператор lock гарантирует, что один поток не войдет в критическую часть кода, в то время как другой поток будет в критическом разделе. Однако это не сработает, если рабочая нагрузка распределена по ферме серверов (например, несколько серверов IIS + балансировщик нагрузки).

Поддерживает ли .NET такой сценарий?
Есть ли какой-нибудь класс, который можно использовать для управления выполнением критического раздела кода потоками, запущенными на нескольких машинах?

Если нет, то можно ли есть ли какой-либо стандартный метод решения таких проблем?

Этот вопрос был вызван обсуждением , которое началось здесь , но не ограничивается SharePoint или ASP.NET.

12
задан Community 23 May 2017 в 12:33
поделиться