Gerenciar prioridades de conversa

Aplica-se a:SQL ServerInstância Gerenciada de SQL do Azure

As prioridades de conversa do Service Broker permitem especificar quais conversas priorizar para que suas mensagens não sejam bloqueadas por um grande número de mensagens de conversas menos importantes.

Habilitar prioridades de conversa

As prioridades de conversa sempre estão ativas para instruções RECEIVE. A opção de banco de dados HONOR_BROKER_PRIORITY deve estar ativa em tornar prioridades de conversa ativas para instruções SEND. Por padrão, essa opção é definida como OFF para todos os bancos de dados.

Um administrador pode habilitar prioridades de conversa para instruções SEND em um banco de dados usando a seguinte instrução:

ALTER DATABASE MyDatabase
    SET HONOR_BROKER_PRIORITY ON;

Um administrador pode desativar prioridades de conversa para instruções SEND usando a seguinte instrução:

ALTER DATABASE MyDatabase
    SET HONOR_BROKER_PRIORITY OFF;

Especificar prioridades de conversa

As prioridades da conversa são especificadas usando as instruções CREATE BROKER PRIORITY, ALTER BROKER PRIORITY e DROP BROKER PRIORITY. Para obter mais informações, consulte as prioridades de conversa.

Consultar prioridades de conversa

As prioridades da conversa são armazenadas na visualização do sistema sys.conversation_priorities. A instrução a seguir lista todas as prioridades de conversa no banco de dados atual:

SELECT scp.name AS priority_name,
       ssc.name AS contract_name,
       ssvc.name AS local_service_name,
       scp.remote_service_name,
       scp.priority AS priority_level
FROM sys.conversation_priorities AS scp
     INNER JOIN sys.service_contracts AS ssc
         ON scp.service_contract_id = ssc.service_contract_id
     INNER JOIN sys.services AS ssvc
         ON scp.local_service_id = ssvc.service_id
ORDER BY contract_name, local_service_name, remote_service_name;