Связь с сервисом с отслеживанием состояния из кластера обычно осуществляется с помощью Service Fabric Remoting .
Он использует прокси-объект, который обрабатывает соединения, разрешает и повторяет попытки.
Вот пример проекта , который демонстрирует службу без сохранения состояния, которая взаимодействует со службой с контролем состояния.
Он использует ServicePartitionKey
для выбора правильного раздела и TargetReplicaSelector
для выбора реплики; первичный для чтения / записи или вторичный для доступа для чтения.
long partitionKey = PartitionAddressFromWord(word);
var proxy = _dictionaryServiceProxyFactory.CreateServiceProxy<IDictionaryService>(DictionaryServiceUri, new ServicePartitionKey(partitionKey), TargetReplicaSelector.PrimaryReplica, DictionaryServiceListenerSettings.RemotingListenerName);
return proxy.Lookup(word);
Обратите внимание, что код для определения используемого ключа секционирования - это то, что вам нужно создать на основе способа, которым вы разбили данные сервиса.
Подробнее здесь .