Zatrzymywanie i uruchamianie aplikacji Service Broker
Czasami może być konieczne czasowo zatrzymać aplikację Service Broker.Na przykład można zatrzymać zajętą aplikację, aby zainstalować zaktualizowaną wersja procedura składowana aktywacja dla kolejki.Chociaż kolejki można zmieniać bez zatrzymywania aplikacji, kopie aktywacja procedura składowana, które są aktualnie uruchomione nigdy nie może uruchamiać komunikaty do przetwarzania i dlatego zakończyć nigdy nie maja.W takim przypadek zatrzymywanie kolejki powoduje uruchamianie procedur przechowywanych natychmiast zakończyć.Po ponownym uruchomieniu usługa usługa Broker uruchamia zaktualizowane aktywacja procedura składowana.
Informacje w tej sekcji dotyczy zatrzymanie aplikacji tymczasowo dla celów konserwacji.Informacje trwałe usunięcie z bazy danych usługa, zobacz Odinstalowywanie Service Broker aplikacji.
Aby tymczasowo zatrzymać usługa, zmieniać kolejki, która aplikacja używa tak, aby stan kolejki jest wyłączona.Gdy stan kolejki jest wyłączona, kolejki jest niedostępna w przypadku odbierania operacje, które skutecznie zatrzymuje aplikacji.Service Broker nie dostarczania nowych wiadomości do kolejki, a nie zezwala na stosowanie do odbierania wiadomości z kolejki.Gdy aplikacja próbuje komunikat z kolejki jest niedostępny, aplikacja odbiera Transact-SQL błąd.Aplikację można wywołać koniec KONWERSACJI w konwersacji na dowolnym czas, niezależnie od kolejki, która używa konwersacji jest dostępny lub nie.Jednak usługa Broker nie wyśle komunikat końcowy w oknie dialogowym do zdalnej usługa aż do kolejki stają się dostępne.
Po nadejściu wiadomości dla kolejki zatrzymany, Service Broker przechowuje wiadomości w kolejce transmisji dla bazy danych do obiekt docelowy kolejki stają się dostępne.Service Broker nie uzna wiadomości przychodzącej do kolejki zatrzymania się błąd i nie powiadamia się nadawcę.Gdy kolejka staje się dostępne, usługa Broker dostarcza wiadomości w kolejce transmisji do kolejki usługa.To dostawy używa logiki normalnej ponawiania dla wiadomości.Wiadomości są oznaczone opóźnione w kolejce transmisji i ponowione okresowo.Service Broker przechowuje wiadomości w kolejce transmisji i opóźnienia wiadomości, niezależnie od wiadomość pochodzi z tego samego wystąpienie jako kolejka czy przychodzący z sieci.
Zatrzymywanie kolejki nie resetuje czasomierza konwersacji lub okno dialogowe czasomierz okres istnienia wiadomości w kolejce.Jeśli albo czasomierz wygasa, gdy kolejka jest zatrzymana, Service Broker generuje odpowiednie komunikaty, gdy kolejka jest uruchamiana ponownie.
Ponowne uruchomienie aplikacji, należy zmieniać kolejki, która aplikacja używa tak, aby stan kolejki jest włączone.Uruchamia kolejki.Gdy kolejka została aktywacja procedura składowana określonych i kolejka zawiera wiadomości, Service Broker natychmiast uruchamia aktywacja procedura składowana podczas uruchamiania kolejki.Ponieważ kolejka jest teraz dostępny, Service Broker generuje również wiadomości czasomierze konwersacji i okna dialogowego istnienia czasomierzy, które wygasły, podczas gdy kolejka została zatrzymana.Dla aplikacji, która nie używa aktywacja ponownie uruchom aplikację przy użyciu procedury uruchamiania zdefiniowane dla tej aplikacji.
Zobacz także