Hi Bill,

currently we do only send async in the VFS poll endpoint. It would be
easy to add a flag which controls
the sending mode but here comes another approach:

What if you queue the messages inside a JMS queue. If your files
aren't that big, that should work fine with only little performance
loss. Afterwards you could connect a number of consumers (or only 1)
to that queue which polls the messages synchronously from that queue.
Another solution...
Chris recently added a new possibility of throttling the
servicemix-file poller endpoint. I am not sure though since which
version it is in the servicemix-file component. Maybe you can try this
as well.

Regards
Lars



2009/7/22 Bill Simms <[email protected]>:
>
> Hello,
>
> I have a project requirement that needs files to be polled in an ordered
> fashion and synchronously from a remote directory.  I've been looking at
> using servicemix-vfs (for Servicemix 4.0) because it offers so many possible
> file systems.  However, the one problem I've had so far is that vfs will
> always send message exchanges using the asynchronous call.  The fact that
> multiple threads are used at the same time has lead to vfs delivering files
> so quickly that it overloads receiving services and eventually consumes all
> of the JVM's heap memory.  So my question is this:  is there a way
> (presently or in planning) to force vfs to wait until a message exchange is
> done before it trys to send the next exchange?  I've reviewed the
> VFSPollingEndpoint and related classes and it seems almost trivial to set
> the endpoint to use the sendSync() method in combination with the
> synchronous-bypass options of the ExecutorImpl class.  Would this be a good
> approach, or is there a better way?  Thanks.
> --
> View this message in context: 
> http://www.nabble.com/Synchronous-exchanges-with-servicemix-vfs-tp24613615p24613615.html
> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>
>



-- 
http://lhein.blogspot.com

Reply via email to