Udostępnij za pośrednictwem


Tworzenie usługa Broker obiektów

Aplikacja używa Service Broker wykonując Transact-SQL instrukcje, które działają na Service Broker obiekty zdefiniowane w bazie danych. W tej sekcji opisano zagadnienia ogólne podczas tworzenia Service Broker obiekty aplikacji.

Omówienie

Service Broker obiekty zdefiniować metadane i pamięci masowej do określonego zestaw zadań:

  • Typy wiadomości zdefiniować dane, które są wymieniane w konwersacji.

  • Kontrakty określa zadania.Każde zamówienie Określa typy komunikatów, które mogą być używane w wybranej konwersacji, a która strona konwersacji można wysłać wiadomość.

  • A kolejki przechowywane są wiadomości przychodzących dla usługa.

  • A usługa reprezentuje zbiór powiązanych zadań biznesowych.Nazwa usługa służy także do lokalizowania kolejek dla usługa.

Należy zauważyć, że kontrakt zależy od jednego lub kilku typów komunikatów.Usługa zależy od kolejki i mogą zależeć od jednej lub kilku umów.W związku z tym zamówień są utworzone po typów wiadomości i usunięte przed typy wiadomości.Usługi są tworzone po kolejki i umów i usunięte przed kolejki i umów.

Tworzenie obiektów dla usługa

Procedury tworzenia usługi zgodna z tym samym podstawowe konspektu niezależnie od tego, czy usługa jest usługą inicjujący, Usługa miejsce docelowe lub jedno i drugie.

Definicja usługi określa umów, dla którego usługa może być miejsce docelowe.In contrast, an application can use a service to initiate a conversation that uses any contract defined in the database.Service Broker takes this approach to enforce the general rule that a service should only receive messages that the application can process.Aby upewnić się, że aplikacja nie odbiera wiadomości od nieznanych lub dowolnego typu, Service Broker akceptuje nowe okno dialogowe tylko wtedy, gdy w oknie dialogowym następuje kontrakt, określony w usłudze. To usługa inicjujący określa kontrakt do użycia podczas konwersacji zaczyna się, aby usługą inicjujący nie jest konieczne uwzględnienie kontrakt w definicji usługi.

Aby utworzyć obiektów dla usługa, wykonaj następujące czynności:

  1. Utwórz typy wiadomości, definiujących wiadomości usługa umożliwiają wykonywanie wszelkich wymaganych komunikacji.Można samodzielnie zdefiniować te typy lub uzyskania skryptów do tworzenia typów z twórcą usługa, z którymi będzie się komunikować z usługa.Aby pominąć ten krok, gdy baza danych zawiera już typów wiadomości, które wymaga połączenia się z usługa.

  2. Tworzenie jednej lub kilku umów, które definiują strukturę konwersacji, w którym ta usługa może uczestniczyć.Można samodzielnie zdefiniować niniejszej kontrakt lub uzyskania skryptów do tworzenia kontrakt z twórcą usługa, która będzie komunikować z usługą.Aby pominąć ten krok, gdy baza danych zawiera już kontrakty, które wymaga połączenia się z usługa.

  3. Create a queue.Service Broker uses this queue to receive and store incoming messages for the service.Aby uzyskać więcej informacji na temat tworzenia kolejek zobacz temat CREATE QUEUE.Każda usługa musi być kolejką.Aby programowania i zarządzania bardziej bezpośrednie, każdej usługa na ogół używa kolejki przeznaczonym do tej usługa.Jeśli usługa wymaga przechowywania wiadomości, należy określić przechowywania wiadomości dla kolejki.

  4. Tworzenie usługa.Definicji usługi określa kolejkę, która korzysta z usługi i umów, dla której ta usługa jest obiekt miejsce docelowe.

W większości przypadków można utworzyć usługa miejsce docelowe, a następnie użyj umów i typy utworzone dla usługa docelowego do utworzenia usługa inicjujący wiadomości.Jednak w niektórych przypadkach można utworzyć usługa miejsce docelowe inicjujący usługa, która jest już zdefiniowany.W takich wypadkach usługa miejsce docelowe korzysta z typów wiadomości i umów, używany przez usługę inicjujący.Na przykład, jeśli tworzysz usługa miejsce docelowe do odbierania zdarzenie powiadomienia, użyj kontrakt https://schemas.Microsoft.com/SQL/Notifications/PostzdarzenieNotification, ponieważ jest to kontrakt, która korzysta z usługa inicjujący.

Zarządzanie definicji obiektu

Zaleca się utworzenie Transact-SQL za pomocą skryptu Service Broker obiekty, które korzysta z aplikacji. To Transact-SQL skrypt umożliwia łatwe do odwoływania się do charakterystyki z sieci Service Broker obiekty. Skrypt zawiera również sposób wdrożyć usługa na innym systemem lub ponownie utworzyć usługa, jeśli to konieczne.

Jeśli aplikacja wymaga wysyłania wiadomości między SQL Server wystąpienia, zalecane jest utworzenie jednego skryptu, który definiuje typy wiadomości oraz umowy dla usługa, a drugi skrypt, który definiuje kolejki i usługa. Pierwszy skrypt określa interfejs dla usługa, obiekty, które są wspólne dla obu inicjujący usługa i usługa miejsce docelowe.Drugi skrypt określa nazwę usługa i kolejki, obiektów do jednej strony do konwersacji.

W tej sekcji