On 9/4/07, Edwin Wong <[EMAIL PROTECTED]> wrote: > > Hi there, > > I am trying to send large files over ActiveMQ using JMS streams. However, I > am seeing an interesting issue with the broker running out of memory if the > consumer does not pick up the stream quick enough. I was just wondering if > there are any ways to set the memory limit on the broker, and for the > producer to block until more space is available? Has anyone ever run into > this issue? What solutions are there?
Massive files over JMS are always gonna be tricky; as the broker/client tend to have to keep them in RAM until they are all consumed - hence the BlobMessage support. I'd recommend trying 5.x as its got better memory management; allowing you to tweak the usageManager setting in activemq.xml along with supporting spooling to disk to avoid RAM exhaustion > On a related note, I have looked at the BlobMessage API in 5.0-SNAPSHOT, but > that requires an out-of-band transfer, which is not what I am looking for. > Is there anyway to use BlobMessages in-band? No - the main idea behind BlobMessage is to support out of band transfer. i.e. use JMS for the reliable load balancing; but use some file server for the actual transfer of the message payload. -- James ------- http://macstrac.blogspot.com/