[.NET] Message Queueing

Pagina: 1
Acties:

  • whoami
  • Registratie: December 2000
  • Laatst online: 23:52
Ik ben wat met message-queueing aan het spelen, en ik vraag me af of het mogelijk is om een volgorde te specifieren ivm het halen v/d messages uit de queue.
Met andere woorden: is het mogelijk om dmv een zelf opgegeven 'getal' oid een bepaalde message uit een queue te halen?
Of werkt een queue altijd FIFO ? In de documentatie is daar niet zoveel over te vinden.

Dan vraag ik me ook af hoe je bepaalde Messages die binnen eenzelfde transactie op de queue gezet werden, afhaalt.
Ik heb wel wat gelezen en gezien ivm MessageQueueTransaction, maar dat is me toch nog niet heel duidelijk. Ook hierover vind ik niet zo heel veel tutorials (toch niet als het gaat over transactional message queueing in .NET).
Zijn er hier mensen die er wat ervaring mee hebben, en een aantal tips of best practices hebben hieromtrent?

https://fgheysels.github.io/


  • P_de_B
  • Registratie: Juli 2003
  • Niet online
Message.Priority?

offtopic:
Ik begrijp dat je nog bezig bent met je offline/online "problemen" met PDA's. Je zou nog een optie kunnen gebruiken: SQL Server CE, en deze de synchronisatie laten doen als er weer dekking is. Weet niet of het in jouw situatie mogelijk is, zo gaan wij het ws wel oplossen.

[ Voor 50% gewijzigd door P_de_B op 18-06-2004 08:57 ]

Oops! Google Chrome could not find www.rijks%20museum.nl


  • whoami
  • Registratie: December 2000
  • Laatst online: 23:52
Mjah, dat heb ik ook gezien en daarmee kan je inderdaad een prioriteit meegeven.

Ik vroeg me echter af of er een mogelijkheid bestaat om mbhv een uniek id (dat je zelf meegeeft, MessageId is read-only en wordt gegenereerd) messages van de queue te halen.

Met die Priority kan ik misschien toch wel wat doen; ik ga het ff moeten testen.

Over het 'transaction' verhaal heb ik echter nog geen idee hoe ik dat precies zou moeten doen, of hoe dat nu juist in z'n werk gaat.

https://fgheysels.github.io/


  • whoami
  • Registratie: December 2000
  • Laatst online: 23:52
P_de_B schreef op 18 juni 2004 @ 08:54:

offtopic:
Ik begrijp dat je nog bezig bent met je offline/online "problemen" met PDA's. Je zou nog een optie kunnen gebruiken: SQL Server CE, en deze de synchronisatie laten doen als er weer dekking is. Weet niet of het in jouw situatie mogelijk is, zo gaan wij het ws wel oplossen.
Ja, ik ben daar nog altijd wat mee aan het 'spelen'. Ik heb ondertussen wel ff gezien dat het compact framework geen message queueing ondersteunt.
Ik heb idd ook aan zo'n mogelijkheid gedacht, en misschien is dat idd zo geen slecht idee.

Ik vraag me alleen af of die 'synchronisatie' niet bijzonder lang kan duren. Stel dat je 100 mensen hebt die met die applicatie rondlopen, en dat die allemaal per dag een redelijk aantal mutaties uitvoeren, hoe lang kan een synchronisatie dan duren? De server DB moet natuurlijk geupdated worden, maar wijzigingen die anderen in de centrale DB hebben doorgevoerd, moeten dan ook voor iedereen zichtbaar worden op hun 'lokale' datastore.

Echter, ik wil nu toch ook nog een beetje verder prutsen met message queueing omdat ik er ook wel wat meer wil over weten.
Ondertussen weet ik hoe ik een message in een transactie kan sturen naar de queue.
Om ze er weer af te halen, zal ik -naast de message zelf- ook nog een 'nummering' oid moeten meesturen: het totale aantal messages dat bij elkaar behoort, en het nr van een message binnen die transactie.

[ Voor 20% gewijzigd door whoami op 18-06-2004 12:53 ]

https://fgheysels.github.io/


  • justmental
  • Registratie: April 2000
  • Niet online

justmental

my heart, the beat

Volgens mij werken message queue's altijd FIFO of in ongedefinieerde volgorde.
Voor de handhaving van de transactions kan de ontvangende kant een sessie openen per transactie.
De message queue software zorgt dan voor de commit of rollback.

Who is John Galt?


  • Bobco
  • Registratie: Januari 2001
  • Laatst online: 30-10-2023

Bobco

I used to dream about Verona.

justmental schreef op 18 juni 2004 @ 13:13:
Volgens mij werken message queue's altijd FIFO of in ongedefinieerde volgorde.
Voor de handhaving van de transactions kan de ontvangende kant een sessie openen per transactie.
De message queue software zorgt dan voor de commit of rollback.
JMS (de Java standaard voor message queues) heeft wel selectiemogelijkheden op basis van bijvoorbeel attributen van een message. Degene die de message post kan een willekeurige set van key/value pairs aan een message hangen die vervolgens door een MessageSelector kunnen worden gebruikt om messages wel of niet te verwerken. Kent .net geen manier om attributen/properties/.... aan een message te hangen?

With the light in our eyes, it's hard to see.


  • whoami
  • Registratie: December 2000
  • Laatst online: 23:52
Hmm, ik zie hier net dat een Message ook een IsFirstInTransaction en IsLastInTransaction property heeft.

Zoiets zoals Bobco beschrijft vind ik niet direct terug.

https://fgheysels.github.io/

Pagina: 1