WCF распределенные транзакции с балансировкой нагрузки - PullRequest
1 голос
/ 22 марта 2012

У меня есть клиент-серверное приложение.Клиент - это приложение .NET 4.0.Сервер не поддерживает состояние WCF (.NET 4.0).Служба WCF делает некоторые CRUD с базой данных SQL Server 2005.WCF настроен для поддержки транзакций.Службы должны быть без сохранения состояния для масштабируемости.Существует несколько экземпляров службы WCF на разных физических машинах.Они находятся за балансировщиком нагрузки.Если у нас есть следующий код клиента:

using (var scope = new TransactionScope())
{
  var proxy1 = new WCFServiceProxy();
  proxy.DoSomeDBStuff1();
  proxy.DoSomeDBStuff2();

  scope.Complete();
}

, эти два запроса на обслуживание могут обслуживаться разными экземплярами службы WCF.Будут ли эти транзакции работать правильно?

1 Ответ

2 голосов
/ 23 августа 2012

Они должны работать правильно. Двухфазная фиксация транзакции должна работать на разных компьютерах независимо от того, находятся ли они под одним и тем же балансировщиком нагрузки.

...