Diagnóstico e monitorização de desempenho da Comunicação Remota do Reliable Service
O runtime Reliable ServiceRemoting emite contadores de desempenho. Estas informações fornecem informações sobre como o ServiceRemoting está a funcionar e ajudam na resolução de problemas e na monitorização do desempenho.
Contadores de desempenho
O runtime Reliable ServiceRemoting define as seguintes categorias de contador de desempenho:
Categoria | Descrição |
---|---|
Service Fabric Service | Contadores específicos do Azure Service Fabric Service Remoting , por exemplo, o tempo médio necessário para processar o pedido |
Service Fabric Service Method | Contadores específicos de métodos implementados pelo Service Fabric Remoting Service, por exemplo, a frequência com que um método de serviço é invocado |
Cada uma das categorias anteriores tem um ou mais contadores.
A aplicação Monitor de Desempenho do Windows que está disponível por predefinição no sistema operativo Windows pode ser utilizada para recolher e ver dados do contador de desempenho. Diagnóstico do Azure é outra opção para recolher dados do contador de desempenho e carregá-lo para tabelas do Azure.
Nomes de instâncias do contador de desempenho
Um cluster com um grande número de serviços ou partições ServiceRemoting tem um grande número de instâncias de contador de desempenho. Os nomes das instâncias do contador de desempenho podem ajudar a identificar a partição específica e o Método de serviço (se aplicável) ao qual a instância do contador de desempenho está associada.
Categoria do Service Fabric Service
Para a categoria Service Fabric Service
, os nomes das instâncias de contadores estão no seguinte formato:
ServiceFabricPartitionID_ServiceReplicaOrInstanceId_ServiceRuntimeInternalID
ServiceFabricPartitionID é a representação de cadeia do ID de partição do Service Fabric à qual a instância do contador de desempenho está associada. O ID da partição é um GUID e a respetiva representação de cadeia é gerada através do método com o Guid.ToString
especificador de formato "D".
ServiceReplicaOrInstanceId é a representação de cadeia da Réplica/ID de Instância do Service Fabric à qual a instância do contador de desempenho está associada.
ServiceRuntimeInternalID é a representação da cadeia de carateres de um número inteiro de 64 bits gerado pelo runtime do Serviço de Recursos de Infraestrutura para utilização interna. Isto está incluído no nome da instância do contador de desempenho para garantir a sua exclusividade e evitar conflitos com outros nomes de instâncias de contador de desempenho. Os utilizadores não devem tentar interpretar esta parte do nome da instância do contador de desempenho.
Segue-se um exemplo de um nome de instância de contador para um contador que pertence à Service Fabric Service
categoria:
2740af29-78aa-44bc-a20b-7e60fb783264_635650083799324046_5008379932
No exemplo anterior, 2740af29-78aa-44bc-a20b-7e60fb783264
está a representação de cadeia do ID de partição do Service Fabric, 635650083799324046
é a representação de cadeia de carateres de Replica/InstanceId e 5008379932
é o ID de 64 bits gerado para a utilização interna do runtime.
Categoria Método de Serviço do Service Fabric
Para a categoria Service Fabric Service Method
, os nomes das instâncias de contadores estão no seguinte formato:
MethodName_ServiceRuntimeMethodId_ServiceFabricPartitionID_ServiceReplicaOrInstanceId_ServiceRuntimeInternalID
MethodName é o nome do método de serviço ao qual a instância do contador de desempenho está associada. O formato do nome do método é determinado com base em alguma lógica no runtime do Serviço de Recursos de Infraestrutura que equilibra a legibilidade do nome com restrições no comprimento máximo dos nomes da instância do contador de desempenho no Windows.
ServiceRuntimeMethodId é a representação da cadeia de carateres de um número inteiro de 32 bits gerado pelo runtime do Serviço de Recursos de Infraestrutura para utilização interna. Isto está incluído no nome da instância do contador de desempenho para garantir a sua exclusividade e evitar conflitos com outros nomes de instâncias de contador de desempenho. Os utilizadores não devem tentar interpretar esta parte do nome da instância do contador de desempenho.
ServiceFabricPartitionID é a representação de cadeia do ID de partição do Service Fabric à qual a instância do contador de desempenho está associada. O ID da partição é um GUID e a respetiva representação de cadeia é gerada através do método com o Guid.ToString
especificador de formato "D".
ServiceReplicaOrInstanceId é a representação de cadeia da Réplica/ID de Instância do Service Fabric à qual a instância do contador de desempenho está associada.
ServiceRuntimeInternalID é a representação da cadeia de carateres de um número inteiro de 64 bits gerado pelo runtime do Serviço de Recursos de Infraestrutura para utilização interna. Isto está incluído no nome da instância do contador de desempenho para garantir a sua exclusividade e evitar conflitos com outros nomes de instâncias de contador de desempenho. Os utilizadores não devem tentar interpretar esta parte do nome da instância do contador de desempenho.
Segue-se um exemplo de um nome de instância de contador para um contador que pertence à Service Fabric Service Method
categoria:
ivoicemailboxservice.leavemessageasync_2_89383d32-e57e-4a9b-a6ad-57c6792aa521_635650083804480486_5008380
No exemplo anterior, ivoicemailboxservice.leavemessageasync
é o nome do método, 2
é o ID de 32 bits gerado para a utilização interna do runtime, 89383d32-e57e-4a9b-a6ad-57c6792aa521
é a representação de cadeia do ID de partição do Service Fabric,635650083804480486
é a representação de cadeia da Réplica/ID da Instância do Service Fabric e 5008380
é o ID de 64 bits gerado para a utilização interna do runtime.
Lista de contadores de desempenho
Contadores de desempenho do método de serviço
O runtime do Reliable Service publica os seguintes contadores de desempenho relacionados com a execução de métodos de serviço.
Nome da categoria | Nome do contador | Descrição |
---|---|---|
Service Fabric Service Method | Invocações/Seg | Número de vezes que o método de serviço é invocado por segundo |
Service Fabric Service Method | Média de milissegundos por invocação | Tempo necessário para executar o método de serviço em milissegundos |
Service Fabric Service Method | Exceções emitidas/Seg | Número de vezes que o método de serviço lançou uma exceção por segundo |
Contadores de desempenho de processamento de pedidos de serviço
Quando um cliente invoca um método através de um objeto de proxy de serviço, resulta no envio de uma mensagem de pedido através da rede para o serviço de remo. O serviço processa a mensagem de pedido e envia uma resposta de volta para o cliente. O Reliable ServiceRemoting runtime publica os seguintes contadores de desempenho relacionados com o processamento de pedidos de serviço.
Nome da categoria | Nome do contador | Descrição |
---|---|---|
Service Fabric Service | N.º de pedidos pendentes | Número de pedidos a serem processados no serviço |
Service Fabric Service | Média de milissegundos por pedido | Tempo decorrido (em milissegundos) pelo serviço para processar um pedido |
Service Fabric Service | Milissegundos médios para a desserialização de pedidos | Tempo decorrido (em milissegundos) para anular a serialização da mensagem de pedido de serviço quando é recebida no serviço |
Service Fabric Service | Milissegundos médios para serialização de respostas | Tempo necessário (em milissegundos) para serializar a mensagem de resposta do serviço no serviço antes de a resposta ser enviada para o cliente |