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

Unify client and sampler timings in activemq-perf-maven-plugin

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • 5.10.0
    • 5.11.0
    • Performance Test
    • None
    • All

    Description

      Fundamentally there are 2 entities in the plugin managed by different
      threads/threadpools:

      • the client (generic term for producer of consumer)
      • the samplers (throughput + cpu)

      These entities can all be configured separately, and the plugin does not
      complete until the slowest of these is done. Now, the problem is that
      these things all have separate flags, which generally aren't overridden
      unless you want to use a really long command line. For example, to get a
      perf test that runs for 10 seconds, you have to do the following:

      mvn activemq-perf:producer -Dproducer.sendDuration=10000
      -DtpSampler.duration=10000 -DtpSampler.rampUpTime=0
      -DtpSampler.rampDownTime=0 -DcpuSampler.duration=10000
      -DcpuSampler.rampUpTime=0 -DcpuSampler.rampDownTime=0

      And all this is before you start adding flags to do anything useful with
      it. This is because:

      1. sampler threads sleep for the ramp-up time (default 30s); if this
      is longer than the producer's send duration then the sampler won't
      even start doing anything until |the producer has well and truly
      completed
      2. the test runs until the longest configured sampler (by default both
      throughput + cpu run)

      So it's kind of a mess. I'd love to be able to use the principle of
      least surprise (and configuration) so that you can just do this:

      mvn activemq-perf:producer -Dproducer.sendDuration=10000

      mvn activemq-perf:producer -Dproducer.sendType=count
      -Dproducer.sendCount=10000

      Attachments

        Activity

          People

            Unassigned Unassigned
            jkorab Jakub Korab
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: