2017-04-16 5 views
1

코드를 통해 주어진 시간에 패브릭 서비스 클러스터에서 실행중인 servicetype의 인스턴스 수를 확인할 수있는 방법이 있습니까? 한 가지 방법은 ApplicationManifest 파일을보고 그 안에 설정된 인스턴스의 수를 얻는 것이지만, 때때로 매개 변수 파일로 덮어 쓸 수 있습니다. 어떤 아이디어가 있습니까?Azure 패브릭 서비스의 서비스 인스턴스 수

답변

1

서비스를 프로그래밍 방식으로 검사하려면 FabricClient을 확인하면 상태 배포 서비스를 표시 할 수있는 여러 가지 작업이 표시됩니다. 귀하의 특정 질문에 대해서는 실행중인 인스턴스의 수를 얻고 FabricClient.QueryClient.GetReplicaList...(...)을 보면 복제본 목록 (StatelessServices의 경우 인스턴스와 동일 함)이 제공됩니다.

+0

감사합니다. 도움이됩니다. 해당 함수에 대한 partitionId guid는 어디에서 찾을 수 있습니까? 내 말은 - 파티션을 만들었지 만, lowkey, highkey 만 있지만 - partitionId라고하는 것은 아무것도 없다. – ashok

+1

StatefulService의 모든 파티션을 [FabricClient.QueryClient.GetPartitionList ... (...)]로 열거 할 수 있습니다 (https://docs.microsoft.com/en-us/dotnet/api/system.fabric.fabricclient). .queryclient.getpartitionlistasync? view = servicefabric-5.5.216 # System_Fabric_FabricClient_QueryClient_GetPartitionListAsync_System_Uri_). 이렇게하면 파티션에 대한 실제 ID (지침)가 제공됩니다. Stateful 서비스의 경우, stateless에 대해 instances = partitions x replicas *가 없습니다. 대부분의 경우 하나의 파티션 (싱글 톤) 만 갖습니다. – yoape

+0

감사. 나는 그것을했다. 나는 더 나은 해결책을 원했다. 이것을 사용합니다. 감사! – ashok

관련 문제