From andrew at oc384.net Tue Jul 15 19:35:11 2008 From: andrew at oc384.net (Andrew M) Date: Tue, 15 Jul 2008 14:35:11 -0500 Subject: [Rhm-users] RHM error running samples. javax.naming.NoInitialContextException Message-ID: <039101c8e6b1$e61c66c0$b2553440$@net> Anyone know why I'm getting this? Thanks. [root at sukhoi java]# pwd /usr/share/doc/rhm-0.2/java [root at sukhoi java]# java -version java version "1.6.0" OpenJDK Runtime Environment (build 1.6.0-b09) OpenJDK 64-Bit Server VM (build 1.6.0-b09, mixed mode) [root at sukhoi java]# ./runSample.sh org.apache.qpid.example.jmsexample.direct.Consumer Using QPID_HOME: /usr/share/java/ Using QPID_SAMPLE: /usr/share/doc/rhm-0.2 Consumer: Caught an Exception: javax.naming.NoInitialContextException: Cannot instantiate class: org.apache.qpid.jndi.PropertiesFileInitialContextFactory [Root exception is java.lang.ClassNotFoundException: org.apache.qpid.jndi.PropertiesFileInitialContextFactory] -------------- next part -------------- An HTML attachment was scrubbed... URL: From andrew at oc384.net Tue Jul 15 20:01:13 2008 From: andrew at oc384.net (Andrew M) Date: Tue, 15 Jul 2008 15:01:13 -0500 Subject: [Rhm-users] RE: [Rhemrg-users-list] RHM error running samples. javax.naming.NoInitialContextException In-Reply-To: <039101c8e6b1$e61c66c0$b2553440$@net> References: <039101c8e6b1$e61c66c0$b2553440$@net> Message-ID: <03b101c8e6b5$89613f60$9c23be20$@net> I just needed this: yum --nogpgcheck install qpid-java-client-0.2-12.noarch.rpm yum --nogpgcheck install qpid-java-common-0.2-12.noarch.rpm seems ok now. From: rhemrg-users-list-bounces at redhat.com [mailto:rhemrg-users-list-bounces at redhat.com] On Behalf Of Andrew M Sent: Tuesday, July 15, 2008 2:35 PM To: rhemrg-users-list at redhat.com; rhm-users at redhat.com Subject: [Rhemrg-users-list] RHM error running samples. javax.naming.NoInitialContextException Anyone know why I'm getting this? Thanks. [root at sukhoi java]# pwd /usr/share/doc/rhm-0.2/java [root at sukhoi java]# java -version java version "1.6.0" OpenJDK Runtime Environment (build 1.6.0-b09) OpenJDK 64-Bit Server VM (build 1.6.0-b09, mixed mode) [root at sukhoi java]# ./runSample.sh org.apache.qpid.example.jmsexample.direct.Consumer Using QPID_HOME: /usr/share/java/ Using QPID_SAMPLE: /usr/share/doc/rhm-0.2 Consumer: Caught an Exception: javax.naming.NoInitialContextException: Cannot instantiate class: org.apache.qpid.jndi.PropertiesFileInitialContextFactory [Root exception is java.lang.ClassNotFoundException: org.apache.qpid.jndi.PropertiesFileInitialContextFactory] -------------- next part -------------- An HTML attachment was scrubbed... URL: From andrew at oc384.net Thu Jul 17 02:53:11 2008 From: andrew at oc384.net (Andrew M) Date: Wed, 16 Jul 2008 21:53:11 -0500 Subject: [Rhm-users] Shouldn't rhemrg-users-list and rhm-users be merged into one list? Message-ID: <049e01c8e7b8$408b5150$c1a1f3f0$@net> .. just wondering.. Andrew -------------- next part -------------- An HTML attachment was scrubbed... URL: From andrew at oc384.net Thu Jul 17 05:57:32 2008 From: andrew at oc384.net (Andrew M) Date: Thu, 17 Jul 2008 00:57:32 -0500 Subject: [Rhm-users] MRG subscription recovery policy? Message-ID: <04be01c8e7d2$01dc1c90$059455b0$@net> I need something like ActiveMQ's Last Image Subscription Policy. Does MRG Messaging have anything like that? http://activemq.apache.org/subscription-recovery-policy.html Thanks, Andrew From gsim at redhat.com Thu Jul 17 14:36:48 2008 From: gsim at redhat.com (Gordon Sim) Date: Thu, 17 Jul 2008 15:36:48 +0100 Subject: [Rhm-users] MRG subscription recovery policy? In-Reply-To: <04be01c8e7d2$01dc1c90$059455b0$@net> References: <04be01c8e7d2$01dc1c90$059455b0$@net> Message-ID: <487F5900.5030108@redhat.com> Andrew M wrote: > I need something like ActiveMQ's Last Image Subscription Policy. Does MRG > Messaging have anything like that? > http://activemq.apache.org/subscription-recovery-policy.html Not yet, but something similar is on our roadmap. From andrew at oc384.net Thu Jul 17 18:48:12 2008 From: andrew at oc384.net (Andrew M) Date: Thu, 17 Jul 2008 13:48:12 -0500 Subject: [Rhm-users] XML Exchanges Message-ID: <054201c8e83d$aab92a90$002b7fb0$@net> I need to put Map objects on the bus and pass them around for use by java, C++ and (potentially).NET applications. Maps will definitely consist of String-to-String mappings. There may also be String-to-Float, or String-to-Long, etc. What is the best way to do this? It does not appear that AMQP supports some native Map type like JMS. Is the correct plan to have C++ apps translate the Map to/from XML using this: http://www.codesynthesis.com/products/xsd/ and java apps do the same using this: http://xerces.apache.org/ Then put those bits of XML on the bus destined for an XML Exchange? This document... http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/pdf/Messaging_Tu torial/Messaging_Tutorial.pdf talks about XML based routing in Python and C++ but not in Java. Is it not possible in Java? Thanks, Andrew -------------- next part -------------- An HTML attachment was scrubbed... URL: From tross at redhat.com Thu Jul 17 19:10:26 2008 From: tross at redhat.com (Ted Ross) Date: Thu, 17 Jul 2008 15:10:26 -0400 Subject: [Rhm-users] Re: [Rhemrg-users-list] XML Exchanges In-Reply-To: <054201c8e83d$aab92a90$002b7fb0$@net> References: <054201c8e83d$aab92a90$002b7fb0$@net> Message-ID: <487F9922.8060000@redhat.com> Andrew M wrote: > > I need to put Map objects on the bus and pass them around for use by > java, C++ and (potentially).NET applications. Maps will definitely > consist of String-to-String mappings. There may also be > String-to-Float, or String-to-Long, etc. What is the best way to do > this? It does not appear that AMQP supports some native Map type like > JMS. Is the correct plan to have C++ apps translate the Map to/from > XML using this: > > http://www.codesynthesis.com/products/xsd/ > > > > and java apps do the same using this: > > http://xerces.apache.org/ > > > > Then put those bits of XML on the bus destined for an XML Exchange? > > > > This document... > > http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/pdf/Messaging_Tutorial/Messaging_Tutorial.pdf > > talks about XML based routing in Python and C++ but not in Java. Is > it not possible in Java? > > > > Thanks, > > Andrew > > ------------------------------------------------------------------------ > > _______________________________________________ > Rhemrg-users-list mailing list > Rhemrg-users-list at redhat.com > https://www.redhat.com/mailman/listinfo/rhemrg-users-list > Andrew, AMQP has a rich type system that can be used to encode data to be placed in the payload of messages. Included is a "map" type that maps string keys to typed objects (including recursive maps of maps). Messages composed using AMQP types can be transferred via any type of exchange and can be encoded and decoded in any of the supported programming languages (C++, Python, Java). The XML exchange serves a completely different purpose. It allows bindings to be created using xquery expressions. Xquery can be run against the message headers or the message content (if the content is XML) to determine whether or not to route the message to a particular queue. -Ted -------------- next part -------------- An HTML attachment was scrubbed... URL: From andrew at oc384.net Thu Jul 17 20:20:12 2008 From: andrew at oc384.net (Andrew M) Date: Thu, 17 Jul 2008 15:20:12 -0500 Subject: [Rhm-users] RE: [Rhemrg-users-list] XML Exchanges In-Reply-To: <487F9922.8060000@redhat.com> References: <054201c8e83d$aab92a90$002b7fb0$@net> <487F9922.8060000@redhat.com> Message-ID: <055c01c8e84a$852900e0$8f7b02a0$@net> That's excellent. If someone could add Python, C++ and Java examples in this doc it would be very helpful. http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/pdf/Messaging_Tu torial/Messaging_Tutorial.pdf In the meantime. any suggestions where I should look for examples? Thanks, Andrew From: Ted Ross [mailto:tross at redhat.com] Sent: Thursday, July 17, 2008 2:10 PM To: Andrew M Cc: rhemrg-users-list at redhat.com; rhm-users at redhat.com Subject: Re: [Rhemrg-users-list] XML Exchanges Andrew M wrote: I need to put Map objects on the bus and pass them around for use by java, C++ and (potentially).NET applications. Maps will definitely consist of String-to-String mappings. There may also be String-to-Float, or String-to-Long, etc. What is the best way to do this? It does not appear that AMQP supports some native Map type like JMS. Is the correct plan to have C++ apps translate the Map to/from XML using this: http://www.codesynthesis.com/products/xsd/ and java apps do the same using this: http://xerces.apache.org/ Then put those bits of XML on the bus destined for an XML Exchange? This document... http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/pdf/Messaging_Tu torial/Messaging_Tutorial.pdf talks about XML based routing in Python and C++ but not in Java. Is it not possible in Java? Thanks, Andrew _____ _______________________________________________ Rhemrg-users-list mailing list Rhemrg-users-list at redhat.com https://www.redhat.com/mailman/listinfo/rhemrg-users-list Andrew, AMQP has a rich type system that can be used to encode data to be placed in the payload of messages. Included is a "map" type that maps string keys to typed objects (including recursive maps of maps). Messages composed using AMQP types can be transferred via any type of exchange and can be encoded and decoded in any of the supported programming languages (C++, Python, Java). The XML exchange serves a completely different purpose. It allows bindings to be created using xquery expressions. Xquery can be run against the message headers or the message content (if the content is XML) to determine whether or not to route the message to a particular queue. -Ted -------------- next part -------------- An HTML attachment was scrubbed... URL: From jonathan.robie at redhat.com Thu Jul 17 20:46:20 2008 From: jonathan.robie at redhat.com (Jonathan Robie) Date: Thu, 17 Jul 2008 16:46:20 -0400 Subject: [Rhm-users] XML Exchanges In-Reply-To: <054201c8e83d$aab92a90$002b7fb0$@net> References: <054201c8e83d$aab92a90$002b7fb0$@net> Message-ID: <487FAF9C.8020607@redhat.com> Andrew - do you have to route based on the values in these maps? If not, the XML Exchange is not the most direct way to solve your problem. The XML Exchange should work fine in Java JMS, but you currently have to set up your queues in either the low level Java API or in C++ or Python. I haven't actually tested Java JMS programs that use the XML Exchange. Jonathan Andrew M wrote: > > I need to put Map objects on the bus and pass them around for use by > java, C++ and (potentially).NET applications. Maps will definitely > consist of String-to-String mappings. There may also be > String-to-Float, or String-to-Long, etc. What is the best way to do > this? It does not appear that AMQP supports some native Map type like > JMS. Is the correct plan to have C++ apps translate the Map to/from > XML using this: > > http://www.codesynthesis.com/products/xsd/ > > > > and java apps do the same using this: > > http://xerces.apache.org/ > > > > Then put those bits of XML on the bus destined for an XML Exchange? > > > > This document... > > http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/pdf/Messaging_Tutorial/Messaging_Tutorial.pdf > > > talks about XML based routing in Python and C++ but not in Java. Is > it not possible in Java? > > > > Thanks, > > Andrew > > ------------------------------------------------------------------------ > > _______________________________________________ > Rhm-users mailing list > Rhm-users at redhat.com > https://www.redhat.com/mailman/listinfo/rhm-users From andrew at oc384.net Thu Jul 17 20:48:48 2008 From: andrew at oc384.net (Andrew M) Date: Thu, 17 Jul 2008 15:48:48 -0500 Subject: [Rhm-users] documentation suggestion Message-ID: <057601c8e84e$83882550$8a986ff0$@net> I think it should be added to the RHM Messaging Tutorial that for java you need to do: yum --nogpgcheck install qpid-java-client-0.2-12.noarch.rpm yum --nogpgcheck install qpid-java-common-0.2-12.noarch.rpm -------------- next part -------------- An HTML attachment was scrubbed... URL: From andrew at oc384.net Thu Jul 17 20:57:54 2008 From: andrew at oc384.net (Andrew M) Date: Thu, 17 Jul 2008 15:57:54 -0500 Subject: [Rhm-users] Are there java docs for qpid-java-client? Message-ID: <059c01c8e84f$c908b2b0$5b1a1810$@net> Are there java docs for qpid-java-client? I assume this is where the java low level API is at? Andrew -------------- next part -------------- An HTML attachment was scrubbed... URL: From jonathan.robie at redhat.com Thu Jul 17 20:59:56 2008 From: jonathan.robie at redhat.com (Jonathan Robie) Date: Thu, 17 Jul 2008 16:59:56 -0400 Subject: [Rhm-users] RE: [Rhemrg-users-list] XML Exchanges In-Reply-To: <055c01c8e84a$852900e0$8f7b02a0$@net> References: <054201c8e83d$aab92a90$002b7fb0$@net> <487F9922.8060000@redhat.com> <055c01c8e84a$852900e0$8f7b02a0$@net> Message-ID: <487FB2CC.1080906@redhat.com> Hi Andrew, I think you might be better off using FieldTable for this rather than Maps. We use FieldTable extensively in our implementation, it is very well tested for all languages. I *think* Maps are still marked internal, but I could be wrong. In the long run, Google Protocol Buffers would be interesting for this too. XML would work fine, but it might be slower. Jonathan Andrew M wrote: > > That?s excellent. If someone could add Python, C++ and Java examples > in this doc it would be very helpful. > > http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/pdf/Messaging_Tutorial/Messaging_Tutorial.pdf > > > In the meantime? any suggestions where I should look for examples? > > Thanks, > > Andrew > > *From:* Ted Ross [mailto:tross at redhat.com] > *Sent:* Thursday, July 17, 2008 2:10 PM > *To:* Andrew M > *Cc:* rhemrg-users-list at redhat.com; rhm-users at redhat.com > *Subject:* Re: [Rhemrg-users-list] XML Exchanges > > Andrew M wrote: > > I need to put Map objects on the bus and pass them around for use by > java, C++ and (potentially).NET applications. Maps will definitely > consist of String-to-String mappings. There may also be > String-to-Float, or String-to-Long, etc. What is the best way to do > this? It does not appear that AMQP supports some native Map type like > JMS. Is the correct plan to have C++ apps translate the Map to/from > XML using this: > > http://www.codesynthesis.com/products/xsd/ > > and java apps do the same using this: > > http://xerces.apache.org/ > > Then put those bits of XML on the bus destined for an XML Exchange? > > This document... > > http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/pdf/Messaging_Tutorial/Messaging_Tutorial.pdf > > > talks about XML based routing in Python and C++ but not in Java. Is it > not possible in Java? > > Thanks, > > Andrew > > > > > > > _______________________________________________ > Rhemrg-users-list mailing list > Rhemrg-users-list at redhat.com > https://www.redhat.com/mailman/listinfo/rhemrg-users-list > > > Andrew, > > AMQP has a rich type system that can be used to encode data to be > placed in the payload of messages. Included is a "map" type that maps > string keys to typed objects (including recursive maps of maps). > Messages composed using AMQP types can be transferred via any type of > exchange and can be encoded and decoded in any of the supported > programming languages (C++, Python, Java). > > The XML exchange serves a completely different purpose. It allows > bindings to be created using xquery expressions. Xquery can be run > against the message headers or the message content (if the content is > XML) to determine whether or not to route the message to a particular > queue. > > -Ted > > ------------------------------------------------------------------------ > > _______________________________________________ > Rhm-users mailing list > Rhm-users at redhat.com > https://www.redhat.com/mailman/listinfo/rhm-users From jonathan.robie at redhat.com Thu Jul 17 21:16:17 2008 From: jonathan.robie at redhat.com (Jonathan Robie) Date: Thu, 17 Jul 2008 17:16:17 -0400 Subject: [Rhm-users] Re: [Rhemrg-users-list] Are there java docs for qpid-java-client? In-Reply-To: <059c01c8e84f$c908b2b0$5b1a1810$@net> References: <059c01c8e84f$c908b2b0$5b1a1810$@net> Message-ID: <487FB6A1.9080902@redhat.com> We have examples like those in the tutorial - if you want them, I can send them. I *think* we may have some internal Javadoc. I'll fish around ... the people who wrote it aren't in my time zone. Jonathan Andrew M wrote: > > Are there java docs for qpid-java-client? I assume this is where the > java low level API is at? > > > > Andrew > > ------------------------------------------------------------------------ > > _______________________________________________ > Rhemrg-users-list mailing list > Rhemrg-users-list at redhat.com > https://www.redhat.com/mailman/listinfo/rhemrg-users-list > From jonathan.robie at redhat.com Thu Jul 17 21:20:38 2008 From: jonathan.robie at redhat.com (Jonathan Robie) Date: Thu, 17 Jul 2008 17:20:38 -0400 Subject: [Rhm-users] documentation suggestion In-Reply-To: <057601c8e84e$83882550$8a986ff0$@net> References: <057601c8e84e$83882550$8a986ff0$@net> Message-ID: <487FB7A6.7040003@redhat.com> Are you using Fedora, perhaps? Instructions are given for RHEL-5: http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/html/Messaging_Tutorial/sect-Messaging_Tutorial-Installing_RHM-Installing_RHM_on_RHEL5.html And for RHEL-4: http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/html/Messaging_Tutorial/sect-Messaging_Tutorial-Installing_RHM-Installing_RHM_on_RHEL4.html Those are the platforms we officially support with this, which is why they are the ones that are documented. Jonathan Andrew M wrote: > > I think it should be added to the RHM Messaging Tutorial that for java > you need to do: > > > > yum --nogpgcheck install qpid-java-client-0.2-12.noarch.rpm > > yum --nogpgcheck install qpid-java-common-0.2-12.noarch.rpm > > ------------------------------------------------------------------------ > > _______________________________________________ > Rhm-users mailing list > Rhm-users at redhat.com > https://www.redhat.com/mailman/listinfo/rhm-users From jonathan.robie at redhat.com Thu Jul 17 21:41:04 2008 From: jonathan.robie at redhat.com (Jonathan Robie) Date: Thu, 17 Jul 2008 17:41:04 -0400 Subject: [Rhm-users] RE: [Rhemrg-users-list] XML Exchanges In-Reply-To: <055c01c8e84a$852900e0$8f7b02a0$@net> References: <054201c8e83d$aab92a90$002b7fb0$@net> <487F9922.8060000@redhat.com> <055c01c8e84a$852900e0$8f7b02a0$@net> Message-ID: <487FBC70.5070503@redhat.com> I assume you mean examples for FieldTable? (You were thinking Map when you wrote this.) I haven't done that for the tutorial yet, I'll consider it. But you can write anything you want into the message, it's opaque, so any way you want to get things in and out is fine. Jonathan Andrew M wrote: > > That?s excellent. If someone could add Python, C++ and Java examples > in this doc it would be very helpful. > > http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/pdf/Messaging_Tutorial/Messaging_Tutorial.pdf > > > In the meantime? any suggestions where I should look for examples? > > Thanks, > > Andrew > > *From:* Ted Ross [mailto:tross at redhat.com] > *Sent:* Thursday, July 17, 2008 2:10 PM > *To:* Andrew M > *Cc:* rhemrg-users-list at redhat.com; rhm-users at redhat.com > *Subject:* Re: [Rhemrg-users-list] XML Exchanges > > Andrew M wrote: > > I need to put Map objects on the bus and pass them around for use by > java, C++ and (potentially).NET applications. Maps will definitely > consist of String-to-String mappings. There may also be > String-to-Float, or String-to-Long, etc. What is the best way to do > this? It does not appear that AMQP supports some native Map type like > JMS. Is the correct plan to have C++ apps translate the Map to/from > XML using this: > > http://www.codesynthesis.com/products/xsd/ > > and java apps do the same using this: > > http://xerces.apache.org/ > > Then put those bits of XML on the bus destined for an XML Exchange? > > This document... > > http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/pdf/Messaging_Tutorial/Messaging_Tutorial.pdf > > > talks about XML based routing in Python and C++ but not in Java. Is it > not possible in Java? > > Thanks, > > Andrew > > _______________________________________________ > Rhemrg-users-list mailing list > Rhemrg-users-list at redhat.com > https://www.redhat.com/mailman/listinfo/rhemrg-users-list > > > Andrew, > > AMQP has a rich type system that can be used to encode data to be > placed in the payload of messages. Included is a "map" type that maps > string keys to typed objects (including recursive maps of maps). > Messages composed using AMQP types can be transferred via any type of > exchange and can be encoded and decoded in any of the supported > programming languages (C++, Python, Java). > > The XML exchange serves a completely different purpose. It allows > bindings to be created using xquery expressions. Xquery can be run > against the message headers or the message content (if the content is > XML) to determine whether or not to route the message to a particular > queue. > > -Ted > > ------------------------------------------------------------------------ > > _______________________________________________ > Rhm-users mailing list > Rhm-users at redhat.com > https://www.redhat.com/mailman/listinfo/rhm-users From andrew at oc384.net Thu Jul 17 21:45:52 2008 From: andrew at oc384.net (Andrew M) Date: Thu, 17 Jul 2008 16:45:52 -0500 Subject: [Rhm-users] documentation suggestion In-Reply-To: <487FB7A6.7040003@redhat.com> References: <057601c8e84e$83882550$8a986ff0$@net> <487FB7A6.7040003@redhat.com> Message-ID: <05c101c8e856$7cc0f0f0$7642d2d0$@net> Yup. F9. That's probably it. -----Original Message----- From: Jonathan Robie [mailto:jonathan.robie at redhat.com] Sent: Thursday, July 17, 2008 4:21 PM To: Andrew M Cc: rhemrg-users-list at redhat.com; rhm-users at redhat.com Subject: Re: [Rhm-users] documentation suggestion Are you using Fedora, perhaps? Instructions are given for RHEL-5: http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/html/Messaging_T utorial/sect-Messaging_Tutorial-Installing_RHM-Installing_RHM_on_RHEL5.html And for RHEL-4: http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/html/Messaging_T utorial/sect-Messaging_Tutorial-Installing_RHM-Installing_RHM_on_RHEL4.html Those are the platforms we officially support with this, which is why they are the ones that are documented. Jonathan Andrew M wrote: > > I think it should be added to the RHM Messaging Tutorial that for java > you need to do: > > > > yum --nogpgcheck install qpid-java-client-0.2-12.noarch.rpm > > yum --nogpgcheck install qpid-java-common-0.2-12.noarch.rpm > > ------------------------------------------------------------------------ > > _______________________________________________ > Rhm-users mailing list > Rhm-users at redhat.com > https://www.redhat.com/mailman/listinfo/rhm-users From andrew at oc384.net Thu Jul 17 21:51:08 2008 From: andrew at oc384.net (Andrew M) Date: Thu, 17 Jul 2008 16:51:08 -0500 Subject: [Rhm-users] RE: [Rhemrg-users-list] XML Exchanges In-Reply-To: <487FBC70.5070503@redhat.com> References: <054201c8e83d$aab92a90$002b7fb0$@net> <487F9922.8060000@redhat.com> <055c01c8e84a$852900e0$8f7b02a0$@net> <487FBC70.5070503@redhat.com> Message-ID: <05c401c8e857$39147560$ab3d6020$@net> Right, an example for FieldTable would be nice. Maybe even a sample app showing a C++ program and a java program happily exchanging FieldTables populated with Strings, floats, longs.. -----Original Message----- From: Jonathan Robie [mailto:jonathan.robie at redhat.com] Sent: Thursday, July 17, 2008 4:41 PM To: Andrew M Cc: 'Ted Ross'; rhemrg-users-list at redhat.com; rhm-users at redhat.com Subject: Re: [Rhm-users] RE: [Rhemrg-users-list] XML Exchanges I assume you mean examples for FieldTable? (You were thinking Map when you wrote this.) I haven't done that for the tutorial yet, I'll consider it. But you can write anything you want into the message, it's opaque, so any way you want to get things in and out is fine. Jonathan Andrew M wrote: > > That's excellent. If someone could add Python, C++ and Java examples > in this doc it would be very helpful. > > http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/pdf/Messaging_Tu torial/Messaging_Tutorial.pdf > > > In the meantime. any suggestions where I should look for examples? > > Thanks, > > Andrew > > *From:* Ted Ross [mailto:tross at redhat.com] > *Sent:* Thursday, July 17, 2008 2:10 PM > *To:* Andrew M > *Cc:* rhemrg-users-list at redhat.com; rhm-users at redhat.com > *Subject:* Re: [Rhemrg-users-list] XML Exchanges > > Andrew M wrote: > > I need to put Map objects on the bus and pass them around for use by > java, C++ and (potentially).NET applications. Maps will definitely > consist of String-to-String mappings. There may also be > String-to-Float, or String-to-Long, etc. What is the best way to do > this? It does not appear that AMQP supports some native Map type like > JMS. Is the correct plan to have C++ apps translate the Map to/from > XML using this: > > http://www.codesynthesis.com/products/xsd/ > > and java apps do the same using this: > > http://xerces.apache.org/ > > Then put those bits of XML on the bus destined for an XML Exchange? > > This document... > > http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/pdf/Messaging_Tu torial/Messaging_Tutorial.pdf > > > talks about XML based routing in Python and C++ but not in Java. Is it > not possible in Java? > > Thanks, > > Andrew > > _______________________________________________ > Rhemrg-users-list mailing list > Rhemrg-users-list at redhat.com > https://www.redhat.com/mailman/listinfo/rhemrg-users-list > > > Andrew, > > AMQP has a rich type system that can be used to encode data to be > placed in the payload of messages. Included is a "map" type that maps > string keys to typed objects (including recursive maps of maps). > Messages composed using AMQP types can be transferred via any type of > exchange and can be encoded and decoded in any of the supported > programming languages (C++, Python, Java). > > The XML exchange serves a completely different purpose. It allows > bindings to be created using xquery expressions. Xquery can be run > against the message headers or the message content (if the content is > XML) to determine whether or not to route the message to a particular > queue. > > -Ted > > ------------------------------------------------------------------------ > > _______________________________________________ > Rhm-users mailing list > Rhm-users at redhat.com > https://www.redhat.com/mailman/listinfo/rhm-users From jonathan.robie at redhat.com Thu Jul 17 21:54:06 2008 From: jonathan.robie at redhat.com (Jonathan Robie) Date: Thu, 17 Jul 2008 17:54:06 -0400 Subject: [Rhm-users] RE: [Rhemrg-users-list] XML Exchanges In-Reply-To: <05c401c8e857$39147560$ab3d6020$@net> References: <054201c8e83d$aab92a90$002b7fb0$@net> <487F9922.8060000@redhat.com> <055c01c8e84a$852900e0$8f7b02a0$@net> <487FBC70.5070503@redhat.com> <05c401c8e857$39147560$ab3d6020$@net> Message-ID: <487FBF7E.2050003@redhat.com> I hit an unexpected bottleneck thinking this through ... let me feel things out and get back with you tomorrow. Jonathan Andrew M wrote: > Right, an example for FieldTable would be nice. Maybe even a sample app > showing a C++ program and a java program happily exchanging FieldTables > populated with Strings, floats, longs.. > > -----Original Message----- > From: Jonathan Robie [mailto:jonathan.robie at redhat.com] > Sent: Thursday, July 17, 2008 4:41 PM > To: Andrew M > Cc: 'Ted Ross'; rhemrg-users-list at redhat.com; rhm-users at redhat.com > Subject: Re: [Rhm-users] RE: [Rhemrg-users-list] XML Exchanges > > I assume you mean examples for FieldTable? (You were thinking Map when > you wrote this.) > > I haven't done that for the tutorial yet, I'll consider it. But you can > write anything you want into the message, it's opaque, so any way you > want to get things in and out is fine. > > Jonathan > > Andrew M wrote: > >> That's excellent. If someone could add Python, C++ and Java examples >> in this doc it would be very helpful. >> >> >> > http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/pdf/Messaging_Tu > torial/Messaging_Tutorial.pdf > >> In the meantime. any suggestions where I should look for examples? >> >> Thanks, >> >> Andrew >> >> *From:* Ted Ross [mailto:tross at redhat.com] >> *Sent:* Thursday, July 17, 2008 2:10 PM >> *To:* Andrew M >> *Cc:* rhemrg-users-list at redhat.com; rhm-users at redhat.com >> *Subject:* Re: [Rhemrg-users-list] XML Exchanges >> >> Andrew M wrote: >> >> I need to put Map objects on the bus and pass them around for use by >> java, C++ and (potentially).NET applications. Maps will definitely >> consist of String-to-String mappings. There may also be >> String-to-Float, or String-to-Long, etc. What is the best way to do >> this? It does not appear that AMQP supports some native Map type like >> JMS. Is the correct plan to have C++ apps translate the Map to/from >> XML using this: >> >> http://www.codesynthesis.com/products/xsd/ >> >> and java apps do the same using this: >> >> http://xerces.apache.org/ >> >> Then put those bits of XML on the bus destined for an XML Exchange? >> >> This document... >> >> >> > http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/pdf/Messaging_Tu > torial/Messaging_Tutorial.pdf > >> talks about XML based routing in Python and C++ but not in Java. Is it >> not possible in Java? >> >> Thanks, >> >> Andrew >> >> _______________________________________________ >> Rhemrg-users-list mailing list >> Rhemrg-users-list at redhat.com >> https://www.redhat.com/mailman/listinfo/rhemrg-users-list >> >> >> Andrew, >> >> AMQP has a rich type system that can be used to encode data to be >> placed in the payload of messages. Included is a "map" type that maps >> string keys to typed objects (including recursive maps of maps). >> Messages composed using AMQP types can be transferred via any type of >> exchange and can be encoded and decoded in any of the supported >> programming languages (C++, Python, Java). >> >> The XML exchange serves a completely different purpose. It allows >> bindings to be created using xquery expressions. Xquery can be run >> against the message headers or the message content (if the content is >> XML) to determine whether or not to route the message to a particular >> queue. >> >> -Ted >> >> ------------------------------------------------------------------------ >> >> _______________________________________________ >> Rhm-users mailing list >> Rhm-users at redhat.com >> https://www.redhat.com/mailman/listinfo/rhm-users >> > > > From tross at redhat.com Fri Jul 18 12:07:55 2008 From: tross at redhat.com (Ted Ross) Date: Fri, 18 Jul 2008 08:07:55 -0400 Subject: [Rhm-users] RE: [Rhemrg-users-list] XML Exchanges In-Reply-To: <487FBF7E.2050003@redhat.com> References: <054201c8e83d$aab92a90$002b7fb0$@net> <487F9922.8060000@redhat.com> <055c01c8e84a$852900e0$8f7b02a0$@net> <487FBC70.5070503@redhat.com> <05c401c8e857$39147560$ab3d6020$@net> <487FBF7E.2050003@redhat.com> Message-ID: <4880879B.6000908@redhat.com> For what it's worth: "FieldTable" and "map" are the same thing. The AMQP version 0-10 type called "map" is implemented in C++ by a class called "FieldTable" (the name used in an older version of the AMQP spec if I'm not mistaken). In Python, maps are implemented using native dictionaries. I can help provide examples for C++ and Python. For Java, I would need to confer with one of the Java folks to get an example. -Ted Jonathan Robie wrote: > I hit an unexpected bottleneck thinking this through ... let me feel > things out and get back with you tomorrow. > > Jonathan > > Andrew M wrote: >> Right, an example for FieldTable would be nice. Maybe even a sample app >> showing a C++ program and a java program happily exchanging FieldTables >> populated with Strings, floats, longs.. >> >> -----Original Message----- >> From: Jonathan Robie [mailto:jonathan.robie at redhat.com] Sent: >> Thursday, July 17, 2008 4:41 PM >> To: Andrew M >> Cc: 'Ted Ross'; rhemrg-users-list at redhat.com; rhm-users at redhat.com >> Subject: Re: [Rhm-users] RE: [Rhemrg-users-list] XML Exchanges >> >> I assume you mean examples for FieldTable? (You were thinking Map >> when you wrote this.) >> >> I haven't done that for the tutorial yet, I'll consider it. But you >> can write anything you want into the message, it's opaque, so any way >> you want to get things in and out is fine. >> >> Jonathan >> >> Andrew M wrote: >> >>> That's excellent. If someone could add Python, C++ and Java examples >>> in this doc it would be very helpful. >>> >>> >>> >> http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/pdf/Messaging_Tu >> >> torial/Messaging_Tutorial.pdf >>> In the meantime. any suggestions where I should look for examples? >>> >>> Thanks, >>> >>> Andrew >>> >>> *From:* Ted Ross [mailto:tross at redhat.com] >>> *Sent:* Thursday, July 17, 2008 2:10 PM >>> *To:* Andrew M >>> *Cc:* rhemrg-users-list at redhat.com; rhm-users at redhat.com >>> *Subject:* Re: [Rhemrg-users-list] XML Exchanges >>> >>> Andrew M wrote: >>> >>> I need to put Map objects on the bus and pass them around for use by >>> java, C++ and (potentially).NET applications. Maps will definitely >>> consist of String-to-String mappings. There may also be >>> String-to-Float, or String-to-Long, etc. What is the best way to do >>> this? It does not appear that AMQP supports some native Map type >>> like JMS. Is the correct plan to have C++ apps translate the Map >>> to/from XML using this: >>> >>> http://www.codesynthesis.com/products/xsd/ >>> >>> and java apps do the same using this: >>> >>> http://xerces.apache.org/ >>> >>> Then put those bits of XML on the bus destined for an XML Exchange? >>> >>> This document... >>> >>> >>> >> http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/pdf/Messaging_Tu >> >> torial/Messaging_Tutorial.pdf >>> talks about XML based routing in Python and C++ but not in Java. Is >>> it not possible in Java? >>> >>> Thanks, >>> >>> Andrew >>> >>> _______________________________________________ >>> Rhemrg-users-list mailing list Rhemrg-users-list at redhat.com >>> >>> https://www.redhat.com/mailman/listinfo/rhemrg-users-list >>> Andrew, >>> >>> AMQP has a rich type system that can be used to encode data to be >>> placed in the payload of messages. Included is a "map" type that >>> maps string keys to typed objects (including recursive maps of >>> maps). Messages composed using AMQP types can be transferred via any >>> type of exchange and can be encoded and decoded in any of the >>> supported programming languages (C++, Python, Java). >>> >>> The XML exchange serves a completely different purpose. It allows >>> bindings to be created using xquery expressions. Xquery can be run >>> against the message headers or the message content (if the content >>> is XML) to determine whether or not to route the message to a >>> particular queue. >>> >>> -Ted >>> >>> ------------------------------------------------------------------------ >>> >>> >>> _______________________________________________ >>> Rhm-users mailing list >>> Rhm-users at redhat.com >>> https://www.redhat.com/mailman/listinfo/rhm-users >>> >> >> >> > From jonathan.robie at redhat.com Fri Jul 18 12:10:52 2008 From: jonathan.robie at redhat.com (Jonathan Robie) Date: Fri, 18 Jul 2008 08:10:52 -0400 Subject: [Rhm-users] RE: [Rhemrg-users-list] XML Exchanges In-Reply-To: <4880879B.6000908@redhat.com> References: <054201c8e83d$aab92a90$002b7fb0$@net> <487F9922.8060000@redhat.com> <055c01c8e84a$852900e0$8f7b02a0$@net> <487FBC70.5070503@redhat.com> <05c401c8e857$39147560$ab3d6020$@net> <487FBF7E.2050003@redhat.com> <4880879B.6000908@redhat.com> Message-ID: <4880884C.60507@redhat.com> Yes, this all surprised me yesterday. My thinking was shaped by the C++ API. Jonathan Ted Ross wrote: > For what it's worth: "FieldTable" and "map" are the same thing. The > AMQP version 0-10 type called "map" is implemented in C++ by a class > called "FieldTable" (the name used in an older version of the AMQP > spec if I'm not mistaken). In Python, maps are implemented using > native dictionaries. > > I can help provide examples for C++ and Python. For Java, I would > need to confer with one of the Java folks to get an example. > > -Ted > > Jonathan Robie wrote: >> I hit an unexpected bottleneck thinking this through ... let me feel >> things out and get back with you tomorrow. >> >> Jonathan >> >> Andrew M wrote: >>> Right, an example for FieldTable would be nice. Maybe even a sample >>> app >>> showing a C++ program and a java program happily exchanging FieldTables >>> populated with Strings, floats, longs.. >>> >>> -----Original Message----- >>> From: Jonathan Robie [mailto:jonathan.robie at redhat.com] Sent: >>> Thursday, July 17, 2008 4:41 PM >>> To: Andrew M >>> Cc: 'Ted Ross'; rhemrg-users-list at redhat.com; rhm-users at redhat.com >>> Subject: Re: [Rhm-users] RE: [Rhemrg-users-list] XML Exchanges >>> >>> I assume you mean examples for FieldTable? (You were thinking Map >>> when you wrote this.) >>> >>> I haven't done that for the tutorial yet, I'll consider it. But you >>> can write anything you want into the message, it's opaque, so any >>> way you want to get things in and out is fine. >>> >>> Jonathan >>> >>> Andrew M wrote: >>> >>>> That's excellent. If someone could add Python, C++ and Java >>>> examples in this doc it would be very helpful. >>>> >>>> >>>> >>> http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/pdf/Messaging_Tu >>> >>> torial/Messaging_Tutorial.pdf >>>> In the meantime. any suggestions where I should look for examples? >>>> >>>> Thanks, >>>> >>>> Andrew >>>> >>>> *From:* Ted Ross [mailto:tross at redhat.com] >>>> *Sent:* Thursday, July 17, 2008 2:10 PM >>>> *To:* Andrew M >>>> *Cc:* rhemrg-users-list at redhat.com; rhm-users at redhat.com >>>> *Subject:* Re: [Rhemrg-users-list] XML Exchanges >>>> >>>> Andrew M wrote: >>>> >>>> I need to put Map objects on the bus and pass them around for use >>>> by java, C++ and (potentially).NET applications. Maps will >>>> definitely consist of String-to-String mappings. There may also be >>>> String-to-Float, or String-to-Long, etc. What is the best way to do >>>> this? It does not appear that AMQP supports some native Map type >>>> like JMS. Is the correct plan to have C++ apps translate the Map >>>> to/from XML using this: >>>> >>>> http://www.codesynthesis.com/products/xsd/ >>>> >>>> and java apps do the same using this: >>>> >>>> http://xerces.apache.org/ >>>> >>>> Then put those bits of XML on the bus destined for an XML Exchange? >>>> >>>> This document... >>>> >>>> >>>> >>> http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/pdf/Messaging_Tu >>> >>> torial/Messaging_Tutorial.pdf >>>> talks about XML based routing in Python and C++ but not in Java. Is >>>> it not possible in Java? >>>> >>>> Thanks, >>>> >>>> Andrew >>>> >>>> _______________________________________________ >>>> Rhemrg-users-list mailing list Rhemrg-users-list at redhat.com >>>> >>>> https://www.redhat.com/mailman/listinfo/rhemrg-users-list Andrew, >>>> >>>> AMQP has a rich type system that can be used to encode data to be >>>> placed in the payload of messages. Included is a "map" type that >>>> maps string keys to typed objects (including recursive maps of >>>> maps). Messages composed using AMQP types can be transferred via >>>> any type of exchange and can be encoded and decoded in any of the >>>> supported programming languages (C++, Python, Java). >>>> >>>> The XML exchange serves a completely different purpose. It allows >>>> bindings to be created using xquery expressions. Xquery can be run >>>> against the message headers or the message content (if the content >>>> is XML) to determine whether or not to route the message to a >>>> particular queue. >>>> >>>> -Ted >>>> >>>> ------------------------------------------------------------------------ >>>> >>>> >>>> _______________________________________________ >>>> Rhm-users mailing list >>>> Rhm-users at redhat.com >>>> https://www.redhat.com/mailman/listinfo/rhm-users >>>> >>> >>> >>> >> > From jonathan.robie at redhat.com Fri Jul 18 12:21:07 2008 From: jonathan.robie at redhat.com (Jonathan Robie) Date: Fri, 18 Jul 2008 08:21:07 -0400 Subject: [Rhm-users] Re: [Rhemrg-users-list] Are there java docs for qpid-java-client? In-Reply-To: <059c01c8e84f$c908b2b0$5b1a1810$@net> References: <059c01c8e84f$c908b2b0$5b1a1810$@net> Message-ID: <48808AB3.9000405@redhat.com> Hi Andrew, The low level Java API is very much subject to change, but you can download the source and generate your own Javadocs. Examples are also provided as part of the Qpid source - they are the same examples we use for the other APIs. Get the source here: http://cwiki.apache.org/qpid/source-repository.html I believe the target "ant docs" will create the Javadoc for you. Jonathan Andrew M wrote: > > Are there java docs for qpid-java-client? I assume this is where the > java low level API is at? > > > > Andrew > > ------------------------------------------------------------------------ > > _______________________________________________ > Rhemrg-users-list mailing list > Rhemrg-users-list at redhat.com > https://www.redhat.com/mailman/listinfo/rhemrg-users-list > From andrew at oc384.net Sun Jul 20 23:08:34 2008 From: andrew at oc384.net (Andrew M) Date: Sun, 20 Jul 2008 18:08:34 -0500 Subject: [Rhm-users] XML Exchanges In-Reply-To: <487FAF9C.8020607@redhat.com> References: <054201c8e83d$aab92a90$002b7fb0$@net> <487FAF9C.8020607@redhat.com> Message-ID: <077801c8eabd$893eec60$9bbcc520$@net> Jonathan, I'm checking out the FieldTable you mentioned last week. Thanks. I'd like to give you a little background on my application. If you can make any suggestions I'd love to hear them. I'm revamping my financial order routing system. I have trading applications and traders that generate orders something like this: I have connections to multiple stock and options exchange destinations, some use FIX protocol, going forward some will use their own proprietary protocol. To some exchanges I have multiple connections for redundancy and load distribution. Currently I'm using FIX protocol for everything both internal and external and my goal is to use AMQP internally to carry order data in a protocol independent format. AMQP msgs bound for a destination talking FIX would eventually hit my FIX engine for translation into whatever FIX version that counterparty wants. For routing, I would like an app/trader to just place an order on the bus and then based on the stock/options exchange destination specified, have the order routed to the appropriate destinations. It would need to hit a queue for orders going to the exchange and also a queue for an order book app that needs all outgoing orders and incoming responses. Also copies would hit queues for other applications which display the order book on workstations, manage risk, etc. When an app/trader places an order on the bus he specifies an exchange destination, say, NASDAQ. There might be several FIX connections to NASDAQ, I assume each FIX engine would draw from its own queue on the broker. I would like the broker to route all orders generated by certain sources down specific exchange connections. In this way, latency sensitive applications could have their traffic kept separate from other less sensitive stuff. Ie. Joe and Bill both send orders specifying NASDAQ. Joe's orders need to go to the connection NASDAQ1 and Bill's to NASDAQ 2. This would require routing based on both exchange and order source. In order for the routing to be based on both sources and destination exchanges I think the XQuery would be required, right? Some things I'd like to do in the future: - Orders originating from some sources would go right to the exchange without approval from a risk mgmt application. Other traders' orders would be required to hit a risk mgmt application which would look at orders and place approved ones back on the bus for delivery to the exchange. Broker would need to know which sources' orders require approval and route accordingly. - Using multiple connections to an exchange, if the message translation/gateway app talking to one of those links detects the link is down it modifies the routing rules MRG is using so MRG routes all messages for that exchange to queues for links which are up. Speed should obviously be as good as possible with latency to a minimum but I'm not going to be shoveling OPRA message rates through it so I think the XQuery performance hit would be ok. I would think an 8 core box could still saturate my exchange links w/orders anyhow. Maybe I'm trying to do too much w/a broker? Maybe building all this functionality requires an ESB? I appreciate any suggestions... Andrew -----Original Message----- From: Jonathan Robie [mailto:jonathan.robie at redhat.com] Sent: Thursday, July 17, 2008 3:46 PM To: Andrew M Cc: rhemrg-users-list at redhat.com; rhm-users at redhat.com Subject: Re: [Rhm-users] XML Exchanges Andrew - do you have to route based on the values in these maps? If not, the XML Exchange is not the most direct way to solve your problem. The XML Exchange should work fine in Java JMS, but you currently have to set up your queues in either the low level Java API or in C++ or Python. I haven't actually tested Java JMS programs that use the XML Exchange. Jonathan Andrew M wrote: > > I need to put Map objects on the bus and pass them around for use by > java, C++ and (potentially).NET applications. Maps will definitely > consist of String-to-String mappings. There may also be > String-to-Float, or String-to-Long, etc. What is the best way to do > this? It does not appear that AMQP supports some native Map type like > JMS. Is the correct plan to have C++ apps translate the Map to/from > XML using this: > > http://www.codesynthesis.com/products/xsd/ > > > > and java apps do the same using this: > > http://xerces.apache.org/ > > > > Then put those bits of XML on the bus destined for an XML Exchange? > > > > This document... > > http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/pdf/Messaging_Tu torial/Messaging_Tutorial.pdf > > > talks about XML based routing in Python and C++ but not in Java. Is > it not possible in Java? > > > > Thanks, > > Andrew > > ------------------------------------------------------------------------ > > _______________________________________________ > Rhm-users mailing list > Rhm-users at redhat.com > https://www.redhat.com/mailman/listinfo/rhm-users From andrew at oc384.net Mon Jul 21 15:06:06 2008 From: andrew at oc384.net (Andrew M) Date: Mon, 21 Jul 2008 10:06:06 -0500 Subject: [Rhm-users] load balancing Message-ID: <07cf01c8eb43$4d890260$e89b0720$@net> Does MRG support any type round robin message distribution across multiple queues? -------------- next part -------------- An HTML attachment was scrubbed... URL: From cctrieloff at redhat.com Mon Jul 21 15:31:40 2008 From: cctrieloff at redhat.com (Carl Trieloff) Date: Mon, 21 Jul 2008 11:31:40 -0400 Subject: [Rhm-users] load balancing In-Reply-To: <07cf01c8eb43$4d890260$e89b0720$@net> References: <07cf01c8eb43$4d890260$e89b0720$@net> Message-ID: <4884ABDC.8090809@redhat.com> Multiple consumers on a single queue will share the messages from that queue, i.e. first consumer gets first message, next consumer gets next message etc... Carl. Andrew M wrote: > > Does MRG support any type round robin message distribution across > multiple queues? > > > > ------------------------------------------------------------------------ > > _______________________________________________ > Rhm-users mailing list > Rhm-users at redhat.com > https://www.redhat.com/mailman/listinfo/rhm-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From andrew at oc384.net Mon Jul 21 16:42:04 2008 From: andrew at oc384.net (Andrew M) Date: Mon, 21 Jul 2008 11:42:04 -0500 Subject: [Rhm-users] load balancing In-Reply-To: <4884ABDC.8090809@redhat.com> References: <07cf01c8eb43$4d890260$e89b0720$@net> <4884ABDC.8090809@redhat.com> Message-ID: <07fe01c8eb50$b5a1f3e0$20e5dba0$@net> Will that work with a queue shared across federated brokers? Thanks, Andrew From: Carl Trieloff [mailto:cctrieloff at redhat.com] Sent: Monday, July 21, 2008 10:32 AM To: Andrew M Cc: rhemrg-users-list at redhat.com; rhm-users at redhat.com Subject: Re: [Rhm-users] load balancing Multiple consumers on a single queue will share the messages from that queue, i.e. first consumer gets first message, next consumer gets next message etc... Carl. Andrew M wrote: Does MRG support any type round robin message distribution across multiple queues? _____ _______________________________________________ Rhm-users mailing list Rhm-users at redhat.com https://www.redhat.com/mailman/listinfo/rhm-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From jonathan.robie at redhat.com Tue Jul 22 00:17:49 2008 From: jonathan.robie at redhat.com (Jonathan Robie) Date: Mon, 21 Jul 2008 20:17:49 -0400 Subject: [Rhm-users] XML Exchanges In-Reply-To: <077801c8eabd$893eec60$9bbcc520$@net> References: <054201c8e83d$aab92a90$002b7fb0$@net> <487FAF9C.8020607@redhat.com> <077801c8eabd$893eec60$9bbcc520$@net> Message-ID: <4885272D.1070505@redhat.com> Hi Andrew, You're right - the XML Exchange is the only exchange type that can look at the content of the message. The other exchange types look at message properties (the XML Exchange can look at both). If clients set up their own queues and created queries that route messages to those queues, the sending applications need no knowledge of the queries that exist or even of which parts of the message are queried. Performance is not as good as for other exchange types, but you seem to be aware of that already. At this point, we have less performance data on the XML Exchange than for other exchange types (it's much newer!), but from what I can tell, this architecture could well make sense. Any idea how many queues might be active at the same time? Honestly, the XML Exchange is new enough that the best way to get a feel for its performance with the kind of topology you suggest is probably to come up with a simple prototype. Jonathan Andrew M wrote: > Jonathan, > I'm checking out the FieldTable you mentioned last week. Thanks. > > I'd like to give you a little background on my application. If you can make > any suggestions I'd love to hear them. I'm revamping my financial order > routing system. I have trading applications and traders that generate > orders something like this: > > > > exchange=ArcaECN> > > I have connections to multiple stock and options exchange destinations, some > use FIX protocol, going forward some will use their own proprietary > protocol. To some exchanges I have multiple connections for redundancy and > load distribution. Currently I'm using FIX protocol for everything both > internal and external and my goal is to use AMQP internally to carry order > data in a protocol independent format. AMQP msgs bound for a destination > talking FIX would eventually hit my FIX engine for translation into whatever > FIX version that counterparty wants. > > For routing, I would like an app/trader to just place an order on the bus > and then based on the stock/options exchange destination specified, have the > order routed to the appropriate destinations. It would need to hit a queue > for orders going to the exchange and also a queue for an order book app that > needs all outgoing orders and incoming responses. Also copies would hit > queues for other applications which display the order book on workstations, > manage risk, etc. > > When an app/trader places an order on the bus he specifies an exchange > destination, say, NASDAQ. There might be several FIX connections to NASDAQ, > I assume each FIX engine would draw from its own queue on the broker. I > would like the broker to route all orders generated by certain sources down > specific exchange connections. In this way, latency sensitive applications > could have their traffic kept separate from other less sensitive stuff. Ie. > Joe and Bill both send orders specifying NASDAQ. Joe's orders need to go to > the connection NASDAQ1 and Bill's to NASDAQ 2. This would require routing > based on both exchange and order source. In order for the routing to be > based on both sources and destination exchanges I think the XQuery would be > required, right? > > Some things I'd like to do in the future: > > - Orders originating from some sources would go right to the exchange > without approval from a risk mgmt application. Other traders' orders would > be required to hit a risk mgmt application which would look at orders and > place approved ones back on the bus for delivery to the exchange. Broker > would need to know which sources' orders require approval and route > accordingly. > > - Using multiple connections to an exchange, if the message > translation/gateway app talking to one of those links detects the link is > down it modifies the routing rules MRG is using so MRG routes all messages > for that exchange to queues for links which are up. > > Speed should obviously be as good as possible with latency to a minimum but > I'm not going to be shoveling OPRA message rates through it so I think the > XQuery performance hit would be ok. I would think an 8 core box could still > saturate my exchange links w/orders anyhow. > > Maybe I'm trying to do too much w/a broker? Maybe building all this > functionality requires an ESB? > > I appreciate any suggestions... > > Andrew > > > -----Original Message----- > From: Jonathan Robie [mailto:jonathan.robie at redhat.com] > Sent: Thursday, July 17, 2008 3:46 PM > To: Andrew M > Cc: rhemrg-users-list at redhat.com; rhm-users at redhat.com > Subject: Re: [Rhm-users] XML Exchanges > > Andrew - do you have to route based on the values in these maps? > > If not, the XML Exchange is not the most direct way to solve your > problem. The XML Exchange should work fine in Java JMS, but you > currently have to set up your queues in either the low level Java API or > in C++ or Python. I haven't actually tested Java JMS programs that use > the XML Exchange. > > Jonathan > > Andrew M wrote: > >> I need to put Map objects on the bus and pass them around for use by >> java, C++ and (potentially).NET applications. Maps will definitely >> consist of String-to-String mappings. There may also be >> String-to-Float, or String-to-Long, etc. What is the best way to do >> this? It does not appear that AMQP supports some native Map type like >> JMS. Is the correct plan to have C++ apps translate the Map to/from >> XML using this: >> >> http://www.codesynthesis.com/products/xsd/ >> >> >> >> and java apps do the same using this: >> >> http://xerces.apache.org/ >> >> >> >> Then put those bits of XML on the bus destined for an XML Exchange? >> >> >> >> This document... >> >> >> > http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/pdf/Messaging_Tu > torial/Messaging_Tutorial.pdf > >> talks about XML based routing in Python and C++ but not in Java. Is >> it not possible in Java? >> >> >> >> Thanks, >> >> Andrew >> >> ------------------------------------------------------------------------ >> >> _______________________________________________ >> Rhm-users mailing list >> Rhm-users at redhat.com >> https://www.redhat.com/mailman/listinfo/rhm-users >> > > > From cctrieloff at redhat.com Tue Jul 22 00:44:42 2008 From: cctrieloff at redhat.com (Carl Trieloff) Date: Mon, 21 Jul 2008 20:44:42 -0400 Subject: [Rhm-users] load balancing In-Reply-To: <07fe01c8eb50$b5a1f3e0$20e5dba0$@net> References: <07cf01c8eb43$4d890260$e89b0720$@net> <4884ABDC.8090809@redhat.com> <07fe01c8eb50$b5a1f3e0$20e5dba0$@net> Message-ID: <48852D7A.6090205@redhat.com> yes, but be careful, the federation link will then act as 'one consumer' With federation a bunch of consumers essentially hide behind that link. That would be the case just about any typology with federation... what are you trying to do? I might be able to provide better answers with a bit more context. regards Carl. Andrew M wrote: > > Will that work with a queue shared across federated brokers? > > Thanks, > > Andrew > > > > > > *From:* Carl Trieloff [mailto:cctrieloff at redhat.com] > *Sent:* Monday, July 21, 2008 10:32 AM > *To:* Andrew M > *Cc:* rhemrg-users-list at redhat.com; rhm-users at redhat.com > *Subject:* Re: [Rhm-users] load balancing > > > > > > Multiple consumers on a single queue will share the messages from that > queue, i.e. first > consumer gets first message, next consumer gets next message etc... > > Carl. > > > Andrew M wrote: > > Does MRG support any type round robin message distribution across > multiple queues? > > > > > ------------------------------------------------------------------------ > > > > > _______________________________________________ > Rhm-users mailing list > Rhm-users at redhat.com > https://www.redhat.com/mailman/listinfo/rhm-users > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From andrew at oc384.net Tue Jul 22 13:54:31 2008 From: andrew at oc384.net (Andrew M) Date: Tue, 22 Jul 2008 08:54:31 -0500 Subject: [Rhm-users] load balancing In-Reply-To: <48852D7A.6090205@redhat.com> References: <07cf01c8eb43$4d890260$e89b0720$@net> <4884ABDC.8090809@redhat.com> <07fe01c8eb50$b5a1f3e0$20e5dba0$@net> <48852D7A.6090205@redhat.com> Message-ID: <08ab01c8ec02$77db9c70$6792d550$@net> I'm thinking of two federated brokers at different data centers connected by a WAN link. An application would publish messages directly to a single queue existing on both of the federated brokers. A number of consumers would consume messages from that queue from either broker. Say I have 5 consumers talking to the broker at data center "A" and 5 talking to data center "B". Assuming the WAN link is fast, could I expect each of the ten consumers to get roughly 10% of the traffic? Thanks, Andrew From: Carl Trieloff [mailto:cctrieloff at redhat.com] Sent: Monday, July 21, 2008 7:45 PM To: Andrew M Cc: rhemrg-users-list at redhat.com; rhm-users at redhat.com Subject: Re: [Rhm-users] load balancing yes, but be careful, the federation link will then act as 'one consumer' With federation a bunch of consumers essentially hide behind that link. That would be the case just about any typology with federation... what are you trying to do? I might be able to provide better answers with a bit more context. regards Carl. Andrew M wrote: Will that work with a queue shared across federated brokers? Thanks, Andrew From: Carl Trieloff [mailto:cctrieloff at redhat.com] Sent: Monday, July 21, 2008 10:32 AM To: Andrew M Cc: rhemrg-users-list at redhat.com; rhm-users at redhat.com Subject: Re: [Rhm-users] load balancing Multiple consumers on a single queue will share the messages from that queue, i.e. first consumer gets first message, next consumer gets next message etc... Carl. Andrew M wrote: Does MRG support any type round robin message distribution across multiple queues? _____ _______________________________________________ Rhm-users mailing list Rhm-users at redhat.com https://www.redhat.com/mailman/listinfo/rhm-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From andrew at oc384.net Tue Jul 22 14:04:55 2008 From: andrew at oc384.net (Andrew M) Date: Tue, 22 Jul 2008 09:04:55 -0500 Subject: [Rhm-users] XML Exchanges In-Reply-To: <4885272D.1070505@redhat.com> References: <054201c8e83d$aab92a90$002b7fb0$@net> <487FAF9C.8020607@redhat.com> <077801c8eabd$893eec60$9bbcc520$@net> <4885272D.1070505@redhat.com> Message-ID: <08c801c8ec03$eb726960$c2573c20$@net> Thanks. I would say just 2 or 3 dozen queues at once. Is there a practical limit I'm likely to hit? Are there any XML exchange examples(java) floating around? Thanks, Andrew -----Original Message----- From: Jonathan Robie [mailto:jonathan.robie at redhat.com] Sent: Monday, July 21, 2008 7:18 PM To: Andrew M Cc: rhemrg-users-list at redhat.com; rhm-users at redhat.com Subject: Re: [Rhm-users] XML Exchanges Hi Andrew, You're right - the XML Exchange is the only exchange type that can look at the content of the message. The other exchange types look at message properties (the XML Exchange can look at both). If clients set up their own queues and created queries that route messages to those queues, the sending applications need no knowledge of the queries that exist or even of which parts of the message are queried. Performance is not as good as for other exchange types, but you seem to be aware of that already. At this point, we have less performance data on the XML Exchange than for other exchange types (it's much newer!), but from what I can tell, this architecture could well make sense. Any idea how many queues might be active at the same time? Honestly, the XML Exchange is new enough that the best way to get a feel for its performance with the kind of topology you suggest is probably to come up with a simple prototype. Jonathan Andrew M wrote: > Jonathan, > I'm checking out the FieldTable you mentioned last week. Thanks. > > I'd like to give you a little background on my application. If you can make > any suggestions I'd love to hear them. I'm revamping my financial order > routing system. I have trading applications and traders that generate > orders something like this: > > > > exchange=ArcaECN> > > I have connections to multiple stock and options exchange destinations, some > use FIX protocol, going forward some will use their own proprietary > protocol. To some exchanges I have multiple connections for redundancy and > load distribution. Currently I'm using FIX protocol for everything both > internal and external and my goal is to use AMQP internally to carry order > data in a protocol independent format. AMQP msgs bound for a destination > talking FIX would eventually hit my FIX engine for translation into whatever > FIX version that counterparty wants. > > For routing, I would like an app/trader to just place an order on the bus > and then based on the stock/options exchange destination specified, have the > order routed to the appropriate destinations. It would need to hit a queue > for orders going to the exchange and also a queue for an order book app that > needs all outgoing orders and incoming responses. Also copies would hit > queues for other applications which display the order book on workstations, > manage risk, etc. > > When an app/trader places an order on the bus he specifies an exchange > destination, say, NASDAQ. There might be several FIX connections to NASDAQ, > I assume each FIX engine would draw from its own queue on the broker. I > would like the broker to route all orders generated by certain sources down > specific exchange connections. In this way, latency sensitive applications > could have their traffic kept separate from other less sensitive stuff. Ie. > Joe and Bill both send orders specifying NASDAQ. Joe's orders need to go to > the connection NASDAQ1 and Bill's to NASDAQ 2. This would require routing > based on both exchange and order source. In order for the routing to be > based on both sources and destination exchanges I think the XQuery would be > required, right? > > Some things I'd like to do in the future: > > - Orders originating from some sources would go right to the exchange > without approval from a risk mgmt application. Other traders' orders would > be required to hit a risk mgmt application which would look at orders and > place approved ones back on the bus for delivery to the exchange. Broker > would need to know which sources' orders require approval and route > accordingly. > > - Using multiple connections to an exchange, if the message > translation/gateway app talking to one of those links detects the link is > down it modifies the routing rules MRG is using so MRG routes all messages > for that exchange to queues for links which are up. > > Speed should obviously be as good as possible with latency to a minimum but > I'm not going to be shoveling OPRA message rates through it so I think the > XQuery performance hit would be ok. I would think an 8 core box could still > saturate my exchange links w/orders anyhow. > > Maybe I'm trying to do too much w/a broker? Maybe building all this > functionality requires an ESB? > > I appreciate any suggestions... > > Andrew > > > -----Original Message----- > From: Jonathan Robie [mailto:jonathan.robie at redhat.com] > Sent: Thursday, July 17, 2008 3:46 PM > To: Andrew M > Cc: rhemrg-users-list at redhat.com; rhm-users at redhat.com > Subject: Re: [Rhm-users] XML Exchanges > > Andrew - do you have to route based on the values in these maps? > > If not, the XML Exchange is not the most direct way to solve your > problem. The XML Exchange should work fine in Java JMS, but you > currently have to set up your queues in either the low level Java API or > in C++ or Python. I haven't actually tested Java JMS programs that use > the XML Exchange. > > Jonathan > > Andrew M wrote: > >> I need to put Map objects on the bus and pass them around for use by >> java, C++ and (potentially).NET applications. Maps will definitely >> consist of String-to-String mappings. There may also be >> String-to-Float, or String-to-Long, etc. What is the best way to do >> this? It does not appear that AMQP supports some native Map type like >> JMS. Is the correct plan to have C++ apps translate the Map to/from >> XML using this: >> >> http://www.codesynthesis.com/products/xsd/ >> >> >> >> and java apps do the same using this: >> >> http://xerces.apache.org/ >> >> >> >> Then put those bits of XML on the bus destined for an XML Exchange? >> >> >> >> This document... >> >> >> > http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/pdf/Messaging_Tu > torial/Messaging_Tutorial.pdf > >> talks about XML based routing in Python and C++ but not in Java. Is >> it not possible in Java? >> >> >> >> Thanks, >> >> Andrew >> >> ------------------------------------------------------------------------ >> >> _______________________________________________ >> Rhm-users mailing list >> Rhm-users at redhat.com >> https://www.redhat.com/mailman/listinfo/rhm-users >> > > > From jonathan.robie at redhat.com Tue Jul 22 15:02:49 2008 From: jonathan.robie at redhat.com (Jonathan Robie) Date: Tue, 22 Jul 2008 11:02:49 -0400 Subject: [Rhm-users] XML Exchanges In-Reply-To: <08c801c8ec03$eb726960$c2573c20$@net> References: <054201c8e83d$aab92a90$002b7fb0$@net> <487FAF9C.8020607@redhat.com> <077801c8eabd$893eec60$9bbcc520$@net> <4885272D.1070505@redhat.com> <08c801c8ec03$eb726960$c2573c20$@net> Message-ID: <4885F699.8000307@redhat.com> Hi Andrew, The examples we ship are for C++ and Python. Setting up the queues and bindings for an XML Exchange requires either the C++, Python, or low level Java APIs, we will make it possible to set this up with the Java JMS URLs, but we aren't there yet. I don't know where the breaking points are. I'm not trying to be coy, but the XML Exchange is a new exchange type that I wrote recently, and I don't have anything like the systematic performance profiles we have for other exchanges. Each queue binding is one query that must be applied to each message sent to the XML Exchange, I have not yet measured how increasing the number of queries affects performance. If you had said hundreds or thousands, I would certainly have encouraged you to measure this aspect carefully, since I haven't yet. Jonathan Andrew M wrote: > Thanks. I would say just 2 or 3 dozen queues at once. Is there a practical > limit I'm likely to hit? Are there any XML exchange examples(java) floating > around? > > Thanks, > Andrew > > > -----Original Message----- > From: Jonathan Robie [mailto:jonathan.robie at redhat.com] > Sent: Monday, July 21, 2008 7:18 PM > To: Andrew M > Cc: rhemrg-users-list at redhat.com; rhm-users at redhat.com > Subject: Re: [Rhm-users] XML Exchanges > > Hi Andrew, > > You're right - the XML Exchange is the only exchange type that can look > at the content of the message. The other exchange types look at message > properties (the XML Exchange can look at both). If clients set up their > own queues and created queries that route messages to those queues, the > sending applications need no knowledge of the queries that exist or even > of which parts of the message are queried. > > Performance is not as good as for other exchange types, but you seem to > be aware of that already. At this point, we have less performance data > on the XML Exchange than for other exchange types (it's much newer!), > but from what I can tell, this architecture could well make sense. Any > idea how many queues might be active at the same time? > > Honestly, the XML Exchange is new enough that the best way to get a feel > for its performance with the kind of topology you suggest is probably to > come up with a simple prototype. > > Jonathan > > Andrew M wrote: > >> Jonathan, >> I'm checking out the FieldTable you mentioned last week. Thanks. >> >> I'd like to give you a little background on my application. If you can >> > make > >> any suggestions I'd love to hear them. I'm revamping my financial order >> routing system. I have trading applications and traders that generate >> orders something like this: >> >> >> >> > exchange=ArcaECN> >> >> I have connections to multiple stock and options exchange destinations, >> > some > >> use FIX protocol, going forward some will use their own proprietary >> protocol. To some exchanges I have multiple connections for redundancy and >> load distribution. Currently I'm using FIX protocol for everything both >> internal and external and my goal is to use AMQP internally to carry order >> data in a protocol independent format. AMQP msgs bound for a destination >> talking FIX would eventually hit my FIX engine for translation into >> > whatever > >> FIX version that counterparty wants. >> >> For routing, I would like an app/trader to just place an order on the bus >> and then based on the stock/options exchange destination specified, have >> > the > >> order routed to the appropriate destinations. It would need to hit a >> > queue > >> for orders going to the exchange and also a queue for an order book app >> > that > >> needs all outgoing orders and incoming responses. Also copies would hit >> queues for other applications which display the order book on >> > workstations, > >> manage risk, etc. >> >> When an app/trader places an order on the bus he specifies an exchange >> destination, say, NASDAQ. There might be several FIX connections to >> > NASDAQ, > >> I assume each FIX engine would draw from its own queue on the broker. I >> would like the broker to route all orders generated by certain sources >> > down > >> specific exchange connections. In this way, latency sensitive applications >> could have their traffic kept separate from other less sensitive stuff. >> > Ie. > >> Joe and Bill both send orders specifying NASDAQ. Joe's orders need to go >> > to > >> the connection NASDAQ1 and Bill's to NASDAQ 2. This would require routing >> based on both exchange and order source. In order for the routing to be >> based on both sources and destination exchanges I think the XQuery would >> > be > >> required, right? >> >> Some things I'd like to do in the future: >> >> - Orders originating from some sources would go right to the exchange >> without approval from a risk mgmt application. Other traders' orders >> > would > >> be required to hit a risk mgmt application which would look at orders and >> place approved ones back on the bus for delivery to the exchange. Broker >> would need to know which sources' orders require approval and route >> accordingly. >> >> - Using multiple connections to an exchange, if the message >> translation/gateway app talking to one of those links detects the link is >> down it modifies the routing rules MRG is using so MRG routes all messages >> for that exchange to queues for links which are up. >> >> Speed should obviously be as good as possible with latency to a minimum >> > but > >> I'm not going to be shoveling OPRA message rates through it so I think the >> XQuery performance hit would be ok. I would think an 8 core box could >> > still > >> saturate my exchange links w/orders anyhow. >> >> Maybe I'm trying to do too much w/a broker? Maybe building all this >> functionality requires an ESB? >> >> I appreciate any suggestions... >> >> Andrew >> >> >> -----Original Message----- >> From: Jonathan Robie [mailto:jonathan.robie at redhat.com] >> Sent: Thursday, July 17, 2008 3:46 PM >> To: Andrew M >> Cc: rhemrg-users-list at redhat.com; rhm-users at redhat.com >> Subject: Re: [Rhm-users] XML Exchanges >> >> Andrew - do you have to route based on the values in these maps? >> >> If not, the XML Exchange is not the most direct way to solve your >> problem. The XML Exchange should work fine in Java JMS, but you >> currently have to set up your queues in either the low level Java API or >> in C++ or Python. I haven't actually tested Java JMS programs that use >> the XML Exchange. >> >> Jonathan >> >> Andrew M wrote: >> >> >>> I need to put Map objects on the bus and pass them around for use by >>> java, C++ and (potentially).NET applications. Maps will definitely >>> consist of String-to-String mappings. There may also be >>> String-to-Float, or String-to-Long, etc. What is the best way to do >>> this? It does not appear that AMQP supports some native Map type like >>> JMS. Is the correct plan to have C++ apps translate the Map to/from >>> XML using this: >>> >>> http://www.codesynthesis.com/products/xsd/ >>> >>> >>> >>> and java apps do the same using this: >>> >>> http://xerces.apache.org/ >>> >>> >>> >>> Then put those bits of XML on the bus destined for an XML Exchange? >>> >>> >>> >>> This document... >>> >>> >>> >>> > http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_MRG/1.0/pdf/Messaging_Tu > >> torial/Messaging_Tutorial.pdf >> >> >>> talks about XML based routing in Python and C++ but not in Java. Is >>> it not possible in Java? >>> >>> >>> >>> Thanks, >>> >>> Andrew >>> >>> ------------------------------------------------------------------------ >>> >>> _______________________________________________ >>> Rhm-users mailing list >>> Rhm-users at redhat.com >>> https://www.redhat.com/mailman/listinfo/rhm-users >>> >>> >> >> > > > From gsim at redhat.com Tue Jul 22 17:19:10 2008 From: gsim at redhat.com (Gordon Sim) Date: Tue, 22 Jul 2008 18:19:10 +0100 Subject: [Rhemrg-users-list] RE: [Rhm-users] load balancing In-Reply-To: <08ab01c8ec02$77db9c70$6792d550$@net> References: <07cf01c8eb43$4d890260$e89b0720$@net> <4884ABDC.8090809@redhat.com> <07fe01c8eb50$b5a1f3e0$20e5dba0$@net> <48852D7A.6090205@redhat.com> <08ab01c8ec02$77db9c70$6792d550$@net> Message-ID: <4886168E.3010906@redhat.com> Andrew M wrote: > I?m thinking of two federated brokers at different data centers > connected by a WAN link. An application would publish messages directly > to a single queue existing on both of the federated brokers. A number > of consumers would consume messages from that queue from either broker. > Say I have 5 consumers talking to the broker at data center ?A? and 5 > talking to data center ?B?. Assuming the WAN link is fast, could I > expect each of the ten consumers to get roughly 10% of the traffic? No, not with the current implementation I'm afraid. From andrew at oc384.net Thu Jul 24 16:51:27 2008 From: andrew at oc384.net (Andrew M) Date: Thu, 24 Jul 2008 11:51:27 -0500 Subject: [Rhm-users] recalling enqueued messages? Message-ID: <00dc01c8edad$8410fc90$8c32f5b0$@net> I'm placing large volumes of stock orders in queues. I frequently have to send messages to cancel those orders once they've gone live on the exchange. In a case where an order needs to be cancelled before it hits the exchange I'd like to be able to detect that it's still queued up for delivery to the exchange and pull it out of the queue so it never goes live in the first place. Anyone have suggestions on how to do that? Thanks, Andrew -------------- next part -------------- An HTML attachment was scrubbed... URL: From andrew at oc384.net Thu Jul 24 19:38:07 2008 From: andrew at oc384.net (Andrew M) Date: Thu, 24 Jul 2008 14:38:07 -0500 Subject: [Rhm-users] how many queues can I have? Message-ID: <011101c8edc4$cce4aa90$66adffb0$@net> How many queues can I have? If I'm sending 1,000,000 stock orders today, would I have 1,000,000 reply queues so that the execution or reject message from the exchange would flow back to the originator of the order? Or am I off base on how that'd be implemented? Thanks, Andrew -------------- next part -------------- An HTML attachment was scrubbed... URL: From cctrieloff at redhat.com Thu Jul 24 19:54:15 2008 From: cctrieloff at redhat.com (Carl Trieloff) Date: Thu, 24 Jul 2008 15:54:15 -0400 Subject: [Rhm-users] how many queues can I have? In-Reply-To: <011101c8edc4$cce4aa90$66adffb0$@net> References: <011101c8edc4$cce4aa90$66adffb0$@net> Message-ID: <4888DDE7.6070702@redhat.com> Don't think you will get good memory use / lookup if you create that many tmp reply queues at once. however if the tmp queue for reply is short lived that is most likely ok. make them exclusive and auto delete. How many temp queues do you expect to have at once? This is the the factor in using this pattern or not. Carl. Andrew M wrote: > > How many queues can I have? If I'm sending 1,000,000 stock orders > today, would I have 1,000,000 reply queues so that the execution or > reject message from the exchange would flow back to the originator of > the order? Or am I off base on how that'd be implemented? > > Thanks, > > Andrew > > ------------------------------------------------------------------------ > > _______________________________________________ > Rhm-users mailing list > Rhm-users at redhat.com > https://www.redhat.com/mailman/listinfo/rhm-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From andrew at oc384.net Thu Jul 24 20:05:30 2008 From: andrew at oc384.net (Andrew M) Date: Thu, 24 Jul 2008 15:05:30 -0500 Subject: [Rhm-users] how many queues can I have? In-Reply-To: <4888DDE7.6070702@redhat.com> References: <011101c8edc4$cce4aa90$66adffb0$@net> <4888DDE7.6070702@redhat.com> Message-ID: <013201c8edc8$a000aca0$e00205e0$@net> Well let's say I have various producers sending stock orders before the open of trading. When the market opens those orders are filled or cancelled and execution reports come back. I want to make sure those executions get to the app who produced the order. Before the open I may have several hundred thousand orders pending. Is there a better way to go where I don't use an individual temp queue for each order's reply? From: Carl Trieloff [mailto:cctrieloff at redhat.com] Sent: Thursday, July 24, 2008 2:54 PM To: Andrew M Cc: rhemrg-users-list at redhat.com; rhm-users at redhat.com Subject: Re: [Rhm-users] how many queues can I have? Don't think you will get good memory use / lookup if you create that many tmp reply queues at once. however if the tmp queue for reply is short lived that is most likely ok. make them exclusive and auto delete. How many temp queues do you expect to have at once? This is the the factor in using this pattern or not. Carl. Andrew M wrote: How many queues can I have? If I'm sending 1,000,000 stock orders today, would I have 1,000,000 reply queues so that the execution or reject message from the exchange would flow back to the originator of the order? Or am I off base on how that'd be implemented? Thanks, Andrew _____ _______________________________________________ Rhm-users mailing list Rhm-users at redhat.com https://www.redhat.com/mailman/listinfo/rhm-users -------------- next part -------------- An HTML attachment was scrubbed... URL: From whiting at idi-middleware.com Fri Jul 25 01:46:15 2008 From: whiting at idi-middleware.com (Bill Whiting) Date: Thu, 24 Jul 2008 21:46:15 -0400 Subject: [Rhm-users] how many queues can I have? In-Reply-To: <013201c8edc8$a000aca0$e00205e0$@net> References: <011101c8edc4$cce4aa90$66adffb0$@net> <4888DDE7.6070702@redhat.com> <013201c8edc8$a000aca0$e00205e0$@net> Message-ID: <48893067.4060904@idi-middleware.com> Unless the replies are being read by separate processes, then send all of the replies back to a single queue. It's much more efficient, and there's no benefit in that case to separating the reply messages. //Bill Andrew M wrote: > > Well let?s say I have various producers sending stock orders before > the open of trading. When the market opens those orders are filled or > cancelled and execution reports come back. I want to make sure those > executions get to the app who produced the order. Before the open I > may have several hundred thousand orders pending. Is there a better > way to go where I don?t use an individual temp queue for each order?s > reply? > > *From:* Carl Trieloff [mailto:cctrieloff at redhat.com] > *Sent:* Thursday, July 24, 2008 2:54 PM > *To:* Andrew M > *Cc:* rhemrg-users-list at redhat.com; rhm-users at redhat.com > *Subject:* Re: [Rhm-users] how many queues can I have? > > > Don't think you will get good memory use / lookup if you create that > many tmp reply queues at once. however if the tmp queue > for reply is short lived that is most likely ok. make them exclusive > and auto delete. > > How many temp queues do you expect to have at once? This is the the > factor in using this pattern or not. > > Carl. > > > Andrew M wrote: > > How many queues can I have? If I?m sending 1,000,000 stock orders > today, would I have 1,000,000 reply queues so that the execution or > reject message from the exchange would flow back to the originator of > the order? Or am I off base on how that?d be implemented? > > Thanks, > > Andrew > > > ------------------------------------------------------------------------ > > > > > _______________________________________________ > Rhm-users mailing list > Rhm-users at redhat.com > https://www.redhat.com/mailman/listinfo/rhm-users > > ------------------------------------------------------------------------ > > _______________________________________________ > Rhm-users mailing list > Rhm-users at redhat.com > https://www.redhat.com/mailman/listinfo/rhm-users From andrew at oc384.net Fri Jul 25 16:51:58 2008 From: andrew at oc384.net (Andrew M) Date: Fri, 25 Jul 2008 11:51:58 -0500 Subject: [Rhm-users] how many queues can I have? In-Reply-To: <48893067.4060904@idi-middleware.com> References: <011101c8edc4$cce4aa90$66adffb0$@net> <4888DDE7.6070702@redhat.com> <013201c8edc8$a000aca0$e00205e0$@net> <48893067.4060904@idi-middleware.com> Message-ID: <023e01c8ee76$c19554c0$44bffe40$@net> I'm not sure if I understand. Let's say I have producers A and B sending orders. A doesn't need to (and shouldn't) see B's executions returned from the exchange and B shouldn't see A's. Some other application may need to see both A's and B's. wuddyathink? Thanks, Andrew -----Original Message----- From: rhm-users-bounces at redhat.com [mailto:rhm-users-bounces at redhat.com] On Behalf Of Bill Whiting Sent: Thursday, July 24, 2008 8:46 PM To: rhm-users at redhat.com Cc: rhemrg-users-list at redhat.com; rhm-users at redhat.com Subject: Re: [Rhm-users] how many queues can I have? Unless the replies are being read by separate processes, then send all of the replies back to a single queue. It's much more efficient, and there's no benefit in that case to separating the reply messages. //Bill Andrew M wrote: > > Well let's say I have various producers sending stock orders before > the open of trading. When the market opens those orders are filled or > cancelled and execution reports come back. I want to make sure those > executions get to the app who produced the order. Before the open I > may have several hundred thousand orders pending. Is there a better > way to go where I don't use an individual temp queue for each order's > reply? > > *From:* Carl Trieloff [mailto:cctrieloff at redhat.com] > *Sent:* Thursday, July 24, 2008 2:54 PM > *To:* Andrew M > *Cc:* rhemrg-users-list at redhat.com; rhm-users at redhat.com > *Subject:* Re: [Rhm-users] how many queues can I have? > > > Don't think you will get good memory use / lookup if you create that > many tmp reply queues at once. however if the tmp queue > for reply is short lived that is most likely ok. make them exclusive > and auto delete. > > How many temp queues do you expect to have at once? This is the the > factor in using this pattern or not. > > Carl. > > > Andrew M wrote: > > How many queues can I have? If I'm sending 1,000,000 stock orders > today, would I have 1,000,000 reply queues so that the execution or > reject message from the exchange would flow back to the originator of > the order? Or am I off base on how that'd be implemented? > > Thanks, > > Andrew > > > ------------------------------------------------------------------------ > > > > > _______________________________________________ > Rhm-users mailing list > Rhm-users at redhat.com > https://www.redhat.com/mailman/listinfo/rhm-users > > ------------------------------------------------------------------------ > > _______________________________________________ > Rhm-users mailing list > Rhm-users at redhat.com > https://www.redhat.com/mailman/listinfo/rhm-users _______________________________________________ Rhm-users mailing list Rhm-users at redhat.com https://www.redhat.com/mailman/listinfo/rhm-users From andrew at oc384.net Fri Jul 25 18:21:11 2008 From: andrew at oc384.net (Andrew M) Date: Fri, 25 Jul 2008 13:21:11 -0500 Subject: [Rhm-users] MRG subscription recovery policy? In-Reply-To: <487F5900.5030108@redhat.com> References: <04be01c8e7d2$01dc1c90$059455b0$@net> <487F5900.5030108@redhat.com> Message-ID: <024d01c8ee83$37e218f0$a7a64ad0$@net> Any idea when that'll happen? I really need it. Has work been started on it? Maybe I should code that on my own. I'm distributing stock market data and I need to receive the most recent quote in addition to subscribing to subsequent quotes. Any suggestions? Thanks, Andrew -----Original Message----- From: Gordon Sim [mailto:gsim at redhat.com] Sent: Thursday, July 17, 2008 9:37 AM To: Andrew M Cc: rhemrg-users-list at redhat.com; rhm-users at redhat.com Subject: Re: [Rhm-users] MRG subscription recovery policy? Andrew M wrote: > I need something like ActiveMQ's Last Image Subscription Policy. Does MRG > Messaging have anything like that? > http://activemq.apache.org/subscription-recovery-policy.html Not yet, but something similar is on our roadmap. From whiting at idi-middleware.com Fri Jul 25 18:40:25 2008 From: whiting at idi-middleware.com (Bill Whiting) Date: Fri, 25 Jul 2008 14:40:25 -0400 Subject: [Rhm-users] how many queues can I have? In-Reply-To: <023e01c8ee76$c19554c0$44bffe40$@net> References: <011101c8edc4$cce4aa90$66adffb0$@net> <4888DDE7.6070702@redhat.com> <013201c8edc8$a000aca0$e00205e0$@net> <48893067.4060904@idi-middleware.com> <023e01c8ee76$c19554c0$44bffe40$@net> Message-ID: <488A1E19.4000904@idi-middleware.com> If you have several producers that will wait for their replies, then I would create a reply-to queue for each producer, but not for each request message. //Bill Andrew M wrote: > I'm not sure if I understand. Let's say I have producers A and B sending > orders. A doesn't need to (and shouldn't) see B's executions returned from > the exchange and B shouldn't see A's. Some other application may need to > see both A's and B's. wuddyathink? > > Thanks, > Andrew > > > -----Original Message----- > From: rhm-users-bounces at redhat.com [mailto:rhm-users-bounces at redhat.com] On > Behalf Of Bill Whiting > Sent: Thursday, July 24, 2008 8:46 PM > To: rhm-users at redhat.com > Cc: rhemrg-users-list at redhat.com; rhm-users at redhat.com > Subject: Re: [Rhm-users] how many queues can I have? > > Unless the replies are being read by separate processes, then send all > of the replies back to a single queue. It's much more efficient, and > there's no benefit in that case to separating the reply messages. > > //Bill > > Andrew M wrote: > >> Well let's say I have various producers sending stock orders before >> the open of trading. When the market opens those orders are filled or >> cancelled and execution reports come back. I want to make sure those >> executions get to the app who produced the order. Before the open I >> may have several hundred thousand orders pending. Is there a better >> way to go where I don't use an individual temp queue for each order's >> reply? >> >> *From:* Carl Trieloff [mailto:cctrieloff at redhat.com] >> *Sent:* Thursday, July 24, 2008 2:54 PM >> *To:* Andrew M >> *Cc:* rhemrg-users-list at redhat.com; rhm-users at redhat.com >> *Subject:* Re: [Rhm-users] how many queues can I have? >> >> >> Don't think you will get good memory use / lookup if you create that >> many tmp reply queues at once. however if the tmp queue >> for reply is short lived that is most likely ok. make them exclusive >> and auto delete. >> >> How many temp queues do you expect to have at once? This is the the >> factor in using this pattern or not. >> >> Carl. >> >> >> Andrew M wrote: >> >> How many queues can I have? If I'm sending 1,000,000 stock orders >> today, would I have 1,000,000 reply queues so that the execution or >> reject message from the exchange would flow back to the originator of >> the order? Or am I off base on how that'd be implemented? >> >> Thanks, >> >> Andrew >> >> >> ------------------------------------------------------------------------ >> >> >> >> >> _______________________________________________ >> Rhm-users mailing list >> Rhm-users at redhat.com >> https://www.redhat.com/mailman/listinfo/rhm-users >> >> ------------------------------------------------------------------------ >> >> _______________________________________________ >> Rhm-users mailing list >> Rhm-users at redhat.com >> https://www.redhat.com/mailman/listinfo/rhm-users >> > > _______________________________________________ > Rhm-users mailing list > Rhm-users at redhat.com > https://www.redhat.com/mailman/listinfo/rhm-users > > > From andrew at oc384.net Tue Jul 29 01:54:17 2008 From: andrew at oc384.net (Andrew M) Date: Mon, 28 Jul 2008 20:54:17 -0500 Subject: [Rhm-users] recalling a message Message-ID: <01eb01c8f11e$03830450$0a890cf0$@net> Is there a way to maintain an identifier for sent messages which can be used to recall them from a queue(s) later? Thanks, Andrew -------------- next part -------------- An HTML attachment was scrubbed... URL: From gsim at redhat.com Tue Jul 29 08:29:14 2008 From: gsim at redhat.com (Gordon Sim) Date: Tue, 29 Jul 2008 09:29:14 +0100 Subject: [Rhm-users] MRG subscription recovery policy? In-Reply-To: <024d01c8ee83$37e218f0$a7a64ad0$@net> References: <04be01c8e7d2$01dc1c90$059455b0$@net> <487F5900.5030108@redhat.com> <024d01c8ee83$37e218f0$a7a64ad0$@net> Message-ID: <488ED4DA.4050900@redhat.com> Andrew M wrote: > Any idea when that'll happen? I really need it. Has work been started on > it? Maybe I should code that on my own. No, the work has not been started. It may be available in the next MRG release (1.1) which is scheduled for sometime in the last quarter of 2008. If you would like to work on that feature, that would be great! Joining the qpid-dev list at apache would probably be best in that case as it will be within the qpid project that the feature is built. From gsim at redhat.com Tue Jul 29 08:31:08 2008 From: gsim at redhat.com (Gordon Sim) Date: Tue, 29 Jul 2008 09:31:08 +0100 Subject: [Rhm-users] Re: [Rhemrg-users-list] recalling a message In-Reply-To: <01eb01c8f11e$03830450$0a890cf0$@net> References: <01eb01c8f11e$03830450$0a890cf0$@net> Message-ID: <488ED54C.10200@redhat.com> Andrew M wrote: > Is there a way to maintain an identifier for sent messages which can be > used to recall them from a queue(s) later? Not a good one at present, I'm afraid. From andrew at oc384.net Tue Jul 29 13:11:49 2008 From: andrew at oc384.net (Andrew M) Date: Tue, 29 Jul 2008 08:11:49 -0500 Subject: [Rhm-users] RE: [Rhemrg-users-list] recalling a message In-Reply-To: <488ED54C.10200@redhat.com> References: <01eb01c8f11e$03830450$0a890cf0$@net> <488ED54C.10200@redhat.com> Message-ID: <023b01c8f17c$a9b4b450$fd1e1cf0$@net> That seems like a handy feature. Is there a way to submit a feature request for mrg? -----Original Message----- From: Gordon Sim [mailto:gsim at redhat.com] Sent: Tuesday, July 29, 2008 3:31 AM To: Andrew M Cc: rhemrg-users-list at redhat.com; rhm-users at redhat.com Subject: Re: [Rhemrg-users-list] recalling a message Andrew M wrote: > Is there a way to maintain an identifier for sent messages which can be > used to recall them from a queue(s) later? Not a good one at present, I'm afraid. From gsim at redhat.com Tue Jul 29 13:19:39 2008 From: gsim at redhat.com (Gordon Sim) Date: Tue, 29 Jul 2008 14:19:39 +0100 Subject: [Rhm-users] Re: [Rhemrg-users-list] recalling a message In-Reply-To: <023b01c8f17c$a9b4b450$fd1e1cf0$@net> References: <01eb01c8f11e$03830450$0a890cf0$@net> <488ED54C.10200@redhat.com> <023b01c8f17c$a9b4b450$fd1e1cf0$@net> Message-ID: <488F18EB.9090109@redhat.com> Andrew M wrote: > That seems like a handy feature. Is there a way to submit a feature request > for mrg? Yes, https://bugzilla.redhat.com/enter_bug.cgi and pick Red Hat Enterprise MRG and add a new issue. > -----Original Message----- > From: Gordon Sim [mailto:gsim at redhat.com] > Sent: Tuesday, July 29, 2008 3:31 AM > To: Andrew M > Cc: rhemrg-users-list at redhat.com; rhm-users at redhat.com > Subject: Re: [Rhemrg-users-list] recalling a message > > Andrew M wrote: >> Is there a way to maintain an identifier for sent messages which can be >> used to recall them from a queue(s) later? > > Not a good one at present, I'm afraid. >