I forbindelse med Message Queuing er køer midlertidige lagringssteder for meldinger. Køer kan opprettes av:

  • programmer

  • administratorer

  • Message Queuing

Køer som er opprettet av programmer eller administratorer, kalles programkøer. køer som er opprettet av Message Queuing, kallses systemkøer.

programkøer

Message Queuing støtter følgende typer programkøer:

Felleskøer og privatkøer

Felleskøer

I et domenemiljø er felleskøer tilgjengelige via Active Directory Domain Services (AD DS), og replikeres derfor gjennom hele AD-skogen. Bare egenskapene for disse køene replikeres, ikke selve køene eller innholdet i dem. Alle datamaskiner innenfor AD-skogen kan få tilgang til informasjon om felleskøer dersom brukeren har tilstrekkelige rettigheter til å få tilgang til de aktuelle køobjektene. Generelt kan alle brukere i skogen med tilgang til AD DS og Send melding-tillatelse for en felleskø sende meldinger til denne køen. Som standard blir denne tillatelsen gitt når køen opprettes. Hvis du skal lese meldinger fra en felleskø, må du ha tillatelsen Kikk på melding eller Motta melding for køen.

I et AD DS-miljø sørger definerte felleskøer for at køer registreres i katalogtjenesten, og at registreringen sikkerhetskopieres. De er alltid tilgjengelige for andre programmer.

Privatkøer

Privatkøer er ikke automatisk tilgjengelige i AD DS. De vises bare på den lokale datamaskinen som inneholder dem. Privatkøer krever ingen katalogtjenesteressurser, og har derfor følgende fordeler:

  • De er raskere å opprette.

  • Det er ingen ventetid for å få tilgang til køene.

  • De krever ingen replikasjonsressurser.

I et arbeidsgruppemiljø er bare privatkøer tilgjengelige.

Et Message Queuing-program på den lokale datamaskinen trenger bare å kjenne banen til en privatkø for å få tilgang til den. Et Message Queuing-program på en ekstern datamaskin trenger et direkte eller privat formatnavn for å få tilgang til en privatkø. Du kan lese meldinger i en privatkø bare hvis du har tillatelsen Motta melding for køen. Standardinnstillingen er at alle har tillatelse til å sende meldinger til felleskøer og privatkøer.

Transaksjonskø og Ingen transaksjonskø

En transaksjonskø inneholder kun transaksjonsmeldinger, det vil si meldinger som er sendt innenfor en transaksjon. Kravene i forbindelse med sending og mottak av meldinger er basert på køtypen som benyttes (Transaksjonskø eller Ingen transaksjonskø) og køens plassert plassering (lokal eller ekstern).

Sende meldinger

Når transaksjoner benyttes for å sende meldinger, kan meldingene sendes til alle transaksjonskøer, uansett hvor køen er plassert, men transaksjonskøer godtar kun meldinger som sendes innenfor en transaksjon. På tilsvarende måte godtar ikke-transaksjonskøer kun meldinger som sendes utenfor en transaksjon.

Motta meldinger

Du kan motta meldinger fra en lokal eller ekstern kø.

Underkøer

Underkøer tillater at programmer grupperer meldinger. Underkøer er nyttige i følgende situasjoner:

  • Behandling av arbeidsordre Hvis et program behandler meldinger som inneholder elementer fra ulike arbeidsordrer, kan programmet bruke underkøer for å gruppere linjeelementene etter arbeidsordrer for å gjøre behandlingen mer effektiv.

  • Behandling av feilformaterte meldinger Hvis et program mottar en melding som ikke kan behandles straks, kan programmet flytte meldingen til en feilunderkø, slik at den kan behandles senere.

Underkøer opprettes implisitt når de åpnes. Når en melding flyttes til en underkø, oppretter altså denne handlingen en underkø dersom det ikke allerede finnes en underkø. Underkøer slettes når de er tomme, og de har ingen åpne referanser. Programmer kan ikke sende meldinger direkte til underkøer. De kan bare flytte meldinger til en underkø. De kan motta meldinger fra underkøer, flytte dem mellom en hovedkø og en underkø i samme hovedkø eller flytte dem mellom underkøer i samme hovedkø. De kan ikke flytte dem fra underkøen i en hovedkø til underkøen i en annen hovedkø.

I figuren nedenfor kan for eksempel meldinger flyttes frem og tilbake mellom subqueue1 (eller subqueue2) og meldingsmappen Queue for queuea. Meldinger kan også flyttes mellom subqueue1 og subqueue2. På tilsvarende måte kan meldinger flyttes frem og tilbake mellom queuez og underkøene subqueue3 og subqueue4.

Men meldinger kan ikke flyttes i noen retning mellom queuea og subqueue3 eller subqueue4, eller mellom queuez og subqueue1 eller subqueue2. Meldinger kan heller ikke flyttes frem og tilbake mellom mellom underkøene for queuea (subqueue1 eller subqueue2) og underkøene for queuez (subqueue3 eller subqueue4).

Underkøer

Underkøer har ingen egne egenskaper eller noen egen status. De deler egenskapene med hovedkøen. En underkø har for eksempel ingen egen:

  • kvote

  • tilgangskontrolliste (ACL)

  • transaksjonstype

Underkøer deler kvoten med hovedkøen, og meldingene i underkøen omfattes av denne kvoten.

Underkøer kan ikke opprettes under loggkøer eller andre systemkøer, eller under andre underkøer.

Administrasjonskøer

Administrasjonskøer er programgenererte køer. De brukes til lagring av systemgenererte negative og positive bekreftelsesmeldinger, som opprettes av Message Queuing eller koblingsprogrammer. De defineres programmatisk i de opprinnelige meldingene av avsenderprogrammet. Alle tilgjengelige ikke-transaksjonskøer kan defineres som administrasjonskøer. Administrasjonskøer inneholder ikke administrasjonsmeldinger. Disse lagres i interne privatkøer.

Systemgenererte bekreftelsesmeldinger som sendes tilbake til disse køene, kan vise om en melding har kommet frem til målkøen, om den er hentet fra målkøen eller begge deler. Alle bekreftelsesmeldinger inneholder informasjon om hva som utløste bekreftelsen og hvilken melding bekreftelsen henviser til. Ved forespørsel om bekreftelsesmeldinger må avsenderprogrammet angi køen som skal brukes som administrasjonskø, og bekreftelsesnivået for meldingen. En administrasjonskø er normalt en lokal kø, slik at avsenderprogrammet kan lese bekreftelsesmeldingene lokalt.

Svarkøer

Som administrasjonskøer, er svarkøer programgenererte køer. De brukes til lagring av programgenererte svarmeldinger, som normalt returneres av et program som leser meldinger fra en kø. Svarkøer defineres programmatisk av avsenderprogrammet når en melding er sendt. Alle tilgjengelige køer kan defineres som svarkøer. Svarmeldinger er ikke det samme som administrative svarmeldinger. Disse lagres i en intern privatkø.

Svarmeldinger som returneres til disse køene, må bli forstått av programmet som returnerer svarmeldingene og programmet som leser svarmeldingene. Message Queuing har ingen kontroll over informasjonen som sendes i svarmeldinger. Ved forespørsel om svarmeldinger må avsenderprogrammet angi hvilke køer som skal brukes som svarkøer. Svarkøer er normalt lokale køer, slik at avsenderprogrammet kan lese svarmeldingene lokalt.

Når både en svarkø og en administrasjonskø er nødvendig, kan disse funksjonene kombineres i en enkelt kø. Men fordi administrasjonskøer ikke kan være transaksjonkøer, vil ikke denne køen godta transaksjonsmeldinger.

Rapportkøer

Rapportkøer er programgenererte køer som brukes til lagring av rapportmeldinger som genereres av Message Queuing eller koblingsprogrammer når avsenderprogrammet sender en forespørsel om sporing. Rapportmeldingene viser ruten som en melding har benyttet til målet på en ekstern datamaskin eller ruten som en testmelding har benyttet til en testkø på en ekstern datamaskin. Det kan bare være én rapportkø per datamaskin.

Alle rapportkøer må ha følgende etikett og køtype-ID:

  • Etikett: MQReport-kø

  • Køtype-ID:

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

Message Queuing-administratoren oppretter normalt rapportkøer ved å bruke Active Directory-brukere og -datamaskiner. Men et program kan også generere dem hvis riktig etikett og køtype-ID defineres når køen opprettes. Message Queuing bruker etikett og køtype-ID for å finne og åpne riktig kø when når rapportmeldinger sendes.

Systemkøer

Message Queuing oppretter systemkøer. Programmer kan lese meldingene i systemkøer, men kan ikke adressere meldinger til dem. Message Queuing har ulike typer systemkøer, blant annet:

  • loggkøer, som inneholder kopier av alle meldinger som er fjernet fra en kø. Datamaskinlogger inneholder kopier av alle meldinger som er sendt fra en datamaskin.

  • interne privatkøer, som brukes som midlertidige køer for lagring og videresending av meldinger på vei til en målkø. Disse køene er ikke tilgjengelige i AD DS. utgående køer er lokale interne privatkøer, som genereres automatisk for lagring av meldinger som sendes til eksterne køer.

  • blindkøer, som inneholder meldinger som ikke kan leveres. Message Queuing har en transaksjonsblindkø og en blindkø for ikke-transaksjonsmeldinger.

  • tilkoblingskøer, som brukes til meldingstjenester på tvers av plattformer.

  • utgående køer, som er lokale interne køer, som brukes til lagring av meldinger som sendes til eksterne køer. Meldinger kan lagres i utgående køer når datamaskinen er frakoblet. Når en tilkobling opprettes på nytt, sendes de til målkøer på eksterne datamaskiner. Disse køene genereres automatisk og kan ikke opprettes eller slettes manuelt.

Utfør følgende prosedyrer etter behov for å administrere køer:


Innholdsfortegnelse