W kontekście Usługi kolejkowania wiadomości kolejki są tymczasowymi miejscami magazynowania wiadomości różnego typu. Kolejki mogą być tworzone przez:

  • aplikacje,

  • administratorów,

  • kolejkowanie wiadomości.

Kolejki tworzone przez aplikacje lub administratorów nazywa się kolejkami aplikacji. Kolejki tworzone przez Usługę kolejkowania wiadomości są nazywane kolejkami systemowymi.

Kolejki aplikacji

Usługa kolejkowania wiadomości obejmuje następujące typy kolejek aplikacji:

Kolejki publiczne i prywatne

Kolejki publiczne

W środowisku domeny kolejki publiczne są kolejkami publikowanymi w usługach domenowych usługi Active Directory (AD DS), w związku z czym są replikowane przez las. Replikowane są tylko właściwości tych kolejek, a nie same kolejki lub ich zawartość. Dowolny komputer w lesie ma potencjalnie dostęp do informacji związanych z kolejkami publicznymi pod warunkiem, że użytkownik ma wystarczające uprawnienia dostępu do odpowiednich obiektów kolejki. Mówiąc ogólnie, dowolny użytkownik w lesie z dostępem do usługi AD DS i uprawnieniem Wysyłanie wiadomości do danej kolejki publicznej może wysyłać wiadomości do niej. To uprawnienie jest udzielane domyślnie podczas tworzenia kolejki. Aby odczytać wiadomości z kolejki publicznej, trzeba mieć uprawnienie Wgląd do wiadomości lub Odbieranie wiadomości dla tej kolejki.

W środowisku usług domenowych usługi Active Directory definiowanie kolejek publicznych zapewnia, że są one rejestrowane w usłudze katalogowej oraz że tworzona jest kopia zapasowa ich rejestracji. Są one trwałe i dostępne dla innych aplikacji.

Kolejki prywatne

Kolejki prywatne to kolejki nieopublikowane w usłudze AD DS. Są one wyświetlane tylko na komputerze lokalnym, na którym się znajdują. Kolejki prywatne mają tę zaletę, że w ich przypadku nie występuje obciążenie wynikające z działania usługi katalogowej, dzięki czemu kolejki:

  • tworzy się szybciej,

  • nie wykazują opóźnień podczas dostępu,

  • nie mają obciążenia związanego z replikacją.

W środowisku grupy roboczej dostępne są tylko kolejki prywatne.

Aby aplikacja kolejkowania wiadomości działająca na komputerze lokalnym miała dostęp do kolejki prywatnej, musi znać tylko ścieżkę do niej. Aby aplikacja kolejkowania wiadomości działająca na komputerze zdalnym miała dostęp do takiej kolejki, musi znać jej nazwę bezpośrednią lub nazwę w formacie prywatnym. Aby odczytać wiadomości z kolejki, zdalna aplikacja Usługi kolejkowania wiadomości wymaga uprawnienia Odbieranie wiadomości dla tej kolejki. Domyślnie każdy ma uprawnienia do wysyłania wiadomości do kolejek publicznych i prywatnych.

Kolejki transakcyjne i nietransakcyjne

Kolejka transakcyjna zawiera tylko wiadomości transakcyjne, które są wiadomościami wysłanymi w ramach transakcji. Wymagania dotyczące wysyłania i odbierania wiadomości zależą od typu użytej kolejki (transakcyjna lub nietransakcyjna) i jej lokalizacji (lokalna lub zdalna).

Wysyłanie wiadomości

Podczas korzystania z transakcji do wysyłania wiadomości można wysyłać wiadomości do dowolnej kolejki transakcyjnej niezależnie od jej lokalizacji, ale kolejki transakcyjne mogą przyjmować tylko wiadomości wysłane w kontekście transakcji. W podobny sposób kolejki nietransakcyjne mogą akceptować tylko wiadomości wysłane spoza kontekstu transakcji.

Odbieranie wiadomości

Wiadomości można odbierać z kolejki lokalnej lub zdalnej.

Podkolejki

Podkolejki umożliwiają aplikacjom grupowanie wiadomości. Podkolejki są przydatne w następujących scenariuszach:

  • Przetwarzanie zlecenia roboczego. Jeśli aplikacja przetwarza wiadomości zawierające elementy z różnych zleceń roboczych, może korzystać z podkolejek w celu grupowania pozycji w wierszu według zlecenia roboczego, zapewniając wydajniejsze przetwarzanie.

  • Obsługa szkodliwych wiadomości. Jeśli aplikacja odbierze wiadomość, której nie może przetworzyć w danym momencie, to może ją przenieść do podkolejki awaryjnej w celu późniejszego przetworzenia.

Podkolejki są tworzone niejawnie podczas ich otwierania. Innymi słowy, gdy wiadomość zostanie przeniesiona do podkolejki, akcja ta tworzy podkolejkę, jeśli jeszcze nie istniała. Kiedy podkolejki są puste i nie mają otwartych dojść, zostają usunięte. Aplikacje nie mogą wysyłać wiadomości bezpośrednio do podkolejek. Mogą tylko przenosić wiadomości do podkolejki. Mogą odbierać wiadomości z podkolejek, przenosić je między kolejką główną a jej podkolejkami lub między podkolejkami tej samej kolejki głównej. Nie można przenosić wiadomości z podkolejki jednej kolejki głównej do podkolejki innej kolejki głównej.

Na przykład na poniższej ilustracji można przenosić wiadomości między podkolejką podkolejka1 (lub podkolejka2) a folderem kolejki wiadomości kolejkaa. Wiadomości można także przenosić między podkolejkami podkolejka1 i podkolejka2. Podobnie można przenosić wiadomości w obie strony między kolejką kolejkaz a jej podkolejkami: podkolejka3 i podkolejka4.

Nie można jednak przenosić wiadomości w żadnym kierunku między kolejką kolejkaa a podkolejką podkolejka3 lub podkolejka4 ani między kolejką kolejkaz a podkolejkami podkolejka1 lub podkolejka2. Podobnie nie można przenosić wiadomości w obie strony między podkolejkami kolejki kolejkaa (podkolejka1 lub podkolejka2) a podkolejkami kolejki kolejkaz (podkolejka3 lub podkolejka4).

Podkolejki

Podkolejki nie mają swoich właściwości ani stanu. Korzystają z właściwości kolejki głównej. Na przykład podkolejki nie mają swoich:

  • limitów przydziału,

  • list kontroli dostępu (ACL),

  • typów transakcyjnych.

Podkolejki korzystają z limitu przydziału kolejki głównej, a wiadomości w podkolejce są brane pod uwagę w tym limicie.

Nie można utworzyć podkolejek kolejek dziennika lub innych kolejek systemowych ani też podkolejek innych podkolejek.

Kolejki administracyjne

Kolejki administracyjne są kolejkami wygenerowanymi przez aplikacje. Służą do magazynowania wygenerowanych przez system wiadomości potwierdzenia negatywnego i pozytywnego tworzonych przez Usługę kolejkowania wiadomości lub aplikacje łącznika. Są one określane programowo w pierwotnej wiadomości przez aplikację wysyłającą. Jako kolejkę administracyjną można określić dowolną dostępną kolejkę nietransakcyjną. Kolejki administracyjne nie zawierają wiadomości administracyjnych, które są zapisywane w wewnętrznych kolejkach prywatnych.

Wygenerowane przez system wiadomości potwierdzające zwrócone do tych kolejek mogą wskazywać, czy wiadomość dotarła do kolejki docelowej oraz czy została z niej pobrana. Każda wiadomość potwierdzająca zawiera informacje opisujące powód wyzwolenia potwierdzenia i odwołanie do konkretnej wiadomości. Podczas żądania wiadomości potwierdzających aplikacja wysyłająca musi określić kolejkę, która zostanie użyta jako kolejka administracyjna, oraz poziom potwierdzenia wiadomości. Zazwyczaj kolejka administracyjna jest kolejką lokalną, dzięki czemu aplikacja wysyłająca może lokalnie odczytywać wiadomości potwierdzające.

Kolejki odpowiedzi

Podobnie jak kolejki administracyjne, kolejki odpowiedzi są kolejkami wygenerowanymi przez aplikacje. Służą one do magazynowania wygenerowanych przez aplikacje wiadomości z odpowiedzią, które są zazwyczaj zwracane przez aplikację odczytującą wiadomości z kolejki. Kolejki odpowiedzi są określone programowo przez aplikację wysyłającą podczas wysyłania wiadomości. Jako kolejkę odpowiedzi można określić dowolną dostępną kolejkę. Wiadomości z odpowiedzią nie są takie same, jak wiadomości administracyjne z odpowiedzią, które są zapisywane w wewnętrznych kolejkach prywatnych.

Wiadomości z odpowiedzią zwrócone do tych kolejek muszą być zrozumiałe dla aplikacji zwracającej wiadomości z odpowiedzią i aplikacji odczytującej te wiadomości. Usługa kolejkowania wiadomości nie ma kontroli nad informacjami wysyłanymi w wiadomościach z odpowiedzią. Podczas żądania wiadomości z odpowiedzią aplikacja wysyłająca musi określić kolejki, których chce używać jako kolejek z odpowiedziami. Zazwyczaj kolejki odpowiedzi są kolejkami lokalnymi, aby aplikacja wysyłająca mogła lokalnie odczytywać wiadomości z odpowiedziami.

Kiedy potrzebna jest zarówno kolejka odpowiedzi, jak i administracyjna, ich funkcje można połączyć w jednej kolejce. Jednak ponieważ wszystkie kolejki administracyjne muszą być nietransakcyjne, kolejka ta będzie akceptować tylko wiadomości nietransakcyjne.

Kolejki raportu

Kolejki raportu są kolejkami wygenerowanymi przez aplikacje i służą do przechowywania wiadomości raportu, które Usługa kolejkowania wiadomości lub aplikacje łącznika generują podczas śledzenia żądań aplikacji wysyłającej. Wiadomości raportu informują o trasie, jaką wiadomość przebyła do miejsca docelowego na komputerze zdalnym lub do kolejki testowej na tym komputerze. W danym komputerze może istnieć tylko jedna kolejka raportu.

Wszystkie kolejki raportu muszą mieć następującą etykietę i identyfikator typu kolejki:

  • Etykieta: Kolejka MQReport

  • Identyfikator typu kolejki:

    {55EE8F32-CCE9-11CF-B108-0020AFD61CE9}

Administrator Usługi kolejkowania wiadomości zazwyczaj tworzy kolejki raportu za pomocą funkcji Użytkownicy i komputery usługi Active Directory. Może je także wygenerować aplikacja, jeśli podczas tworzenia kolejki zostanie podana prawidłowa etykieta i identyfikator typu kolejki. Usługa kolejkowania wiadomości korzysta z etykiety i identyfikatora typu kolejki w celu znalezienia i otwarcia odpowiedniej kolejki podczas wysyłania wiadomości raportu.

Kolejki systemowe

Usługa kolejkowania wiadomości tworzy kolejki systemowe. Aplikacje mogą odczytywać wiadomości z kolejek systemowych, ale nie mogą kierować wiadomości do nich. Usługa kolejkowania wiadomości udostępnia różne rodzaje kolejek systemowych, między innymi:

  • Kolejki dziennika, które zawierają kopie wszystkich wiadomości usuniętych z kolejki. Dzienniki komputera zawierają kopie wszystkich wiadomości wysłanych z tego komputera.

  • Wewnętrzne kolejki prywatne, które służą jako kolejki pośrednie do zapisywania i przekazywania wiadomości na drodze do kolejki docelowej. Kolejki te nie są publikowane w usłudze AD DS. Kolejki wychodzące są lokalnymi, wewnętrznymi kolejkami prywatnymi generowanymi automatycznie w celu przechowywania wiadomości wysyłanych do kolejek zdalnych.

  • Kolejki wiadomości utraconych zawierające wiadomości, których nie można dostarczyć. Usługa kolejkowania wiadomości udostępnia transakcyjną i nietransakcyjną kolejkę wiadomości utraconych.

  • Kolejki łącznika, które służą do przesyłania wiadomości między platformami.

  • Kolejki wychodzące są lokalnymi, wewnętrznymi kolejkami używanymi do przechowywania wiadomości wysyłanych do kolejek zdalnych. Wiadomości mogą być przechowywane w kolejkach wychodzących, gdy komputer jest w trybie offline, a następnie wysyłane do kolejek docelowych na komputerach zdalnych, gdy zostanie ponownie ustanowiona łączność. Te kolejki są generowane automatycznie i nie można ich tworzyć ani usuwać ręcznie.

Aby administrować kolejkami, należy wykonywać w miarę potrzeby nastepujące procedury:


Spis treści