Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Instância Gerenciada de SQL do Azure
Use a instrução ALTER QUEUE para iniciar e parar uma fila. Quando uma fila é iniciada, ela está disponível para enviar e receber mensagens. Quando uma fila é interrompida, o Service Broker não entrega novas mensagens para a fila e não permite que os aplicativos recebam mensagens da fila.
Os administradores criam frequentemente filas em um estado indisponível. Esse estado impede que o Service Broker coloque mensagens na fila até que todos os objetos de um serviço sejam criados. Quando o serviço estiver pronto para receber mensagens, o administrador torna a fila disponível com a seguinte instrução:
ALTER QUEUE dbo.ExpenseQueue
WITH STATUS = ON;
A seguinte instrução torna a fila indisponível para recebimento:
ALTER QUEUE dbo.ExpenseQueue
WITH STATUS = OFF;
Quando uma fila não está disponível para recebimento, um aplicativo não pode processar as mensagens na fila. Como o Service Broker garante que uma mensagem saia apenas da fila como parte de uma operação de recebimento, não há como remover mensagens de uma fila parada. O Service Broker foi projetado para permitir a manutenção enquanto a fila continua a receber mensagens, portanto, raramente é necessário parar uma fila depois que a fila é disponibilizada. Como a maioria dos procedimentos armazenados de ativação é encerrada quando uma RECEIVE operação falha ou quando não há mais mensagens disponíveis, um motivo para parar a fila é substituir um procedimento armazenado de ativação para um serviço que recebe mensagens constantemente.
Quando chega uma mensagem para uma indisponível, o Service Broker mantém a mensagem na fila de transmissão para o banco de dados, em vez de entregar a mensagem à fila.