Uploaded image for project: 'ActiveMQ Classic'
  1. ActiveMQ Classic
  2. AMQ-1100

BufferedTransportFilter or similar feature

    XMLWordPrintableJSON

Details

    • Wish
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • 4.1.0
    • 5.6.0
    • Transport
    • None

    Description

      I'm considering using ActiveMQ for an app that would transfer a large number of messages over the http transport (across firewalls/internet). I would want to use async messages (i.e. useAsyncSend=true) to boost performance.

      Would it make sense to introduce a BufferedTransportFilter to boost performance even further? (considering the fact that these messages would be traveling over the internet). That is, the BufferedTransportFilter would wait a configurable amount of time before "batching together" all the messages it received so far (or after some configurable limit in terms of bytes and/or number of messages) and then pass this on to the next Transport. Ideally, the Transport API would have to be extended to allow for a onewayBatch(List<Object> messageBatch) method (and the default implementation would just iterate over the list and rely on the existing oneway(Object) method. HttpClientTransport could then be extended to allow for a single POST to send multiple messages over the internet.

      Is this something that was considered? Or that exists in some other form that I missed while going through the sources?

      I'd be willing to contribute some time for implementing this if the maintainers think its a worthwhile feature to have.

      Thanks,

      Hernan

      Attachments

        Activity

          People

            Unassigned Unassigned
            hernan.otero Hernan Otero
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: