Hello,
Thank you very much for all your responses, I will try it.

Regards
Philippe

On Wed, Oct 12, 2011 at 10:22 PM, sebb <seb...@gmail.com> wrote:

> On 12 October 2011 20:43, David Parks <davidpark...@yahoo.com> wrote:
> > This is as expected in this scenario, I was using it with an infinite
> loop,
> > so in the end the percentages are roughly correct (but still randomly
> > distributed, which accounts for the error you are noting). But note how
> the
> > logic works here, each iteration it will pick one controller, and that
> > controller may or may not run in that iteration (depending on its
> percentage
> > probability that it will run). This will randomly distribute load.
> >
> > If you want to control executions precisely and not just distribute load
> in
> > percentages then we need to consider another approach. And now I notice a
> > few details of your original email that I didn't take into account.
> >
> > Here are a few other ideas you can play with:
> >
> > Random Controller
> >  * Module Controller A [20%]
> >  * Module Controller A [20%]
> >  * Module Controller B [20%]
> >  * Module Controller C [20%]
> >  * Module Controller C [20%]
> >
> > In this scenario A & C will run 40% of the time and B will run 20% of the
> > time, but one of them is always selected by the Random Controller. You
> can
> > use the module controller to allow you to define A, B, and C elsewhere
> and
> > duplicate their use in this sense.
> >
> > Another idea is the If Controller - I haven't used it so I'm just going
> off
> > the top of my head here, but I would experiment with creating a random
> > variable (0-1.0) using the [Random Variable Configuration Element] to
> > determine which IF controller to run, and each IF controller only runs if
> > the random variable defined at the beginning of the loop is say: (0-0.3 =
> > 30%, A), (0.3-0.4 = 10%, B), etc. This would guarantee 1 and only 1 of
> the
> > controllers run in a probabilistic pattern.
>
> Or generate a number in the range 0-9, and use the switch controller
> with 10 child samples in the appropriate percentages.
>
> If you convert the random number 0-9 into 0-3 in the appropriate
> percentages, you can use just 4 samples.
>
> This can be done using a BSF/JSR223/BeanShell Pre-Processor to create
> a variable in the appropriate range.
>
> Pseudo-code:
> r=random[0-9]
> n={0,1,1,1,1,2,2,2,3,3}[r] // index the array
>
> Switch Controller ${n}
>
> Or you can create a CSV file with a suitable random mix of numbers and
> use that to define the Switch variable
>
> > I'll bet you could come up with a couple more ways of tackling it if you
> > really tried, but hopefully these give you enough ideas to get by.
> >
> >
> >
> > -----Original Message-----
> > From: Philippe Bossu [mailto:pbo...@gmail.com]
> > Sent: Wednesday, October 12, 2011 11:53 AM
> > To: JMeter Users List
> > Subject: Re: Question about ThrouputController
> >
> > Hello,
> > Thanks for this I tried it but I doesn't work .
> > I set 1 threads running 50 LOOP Count => I get 24 executions
> >
> > That's not what I want, I want 50 executions with the repartition,
> because
> > in this case If I have a sampler waiting for RandomController run result,
> > it will fail since it may not execute.
> > is it something possible ?
> >
> > By the  way, percentages are not well respected.
> > 7 / 24 => 30 % => I get 7 executions => OK
> > 4 / 24 => 10% => I get 4 executions => KO
> > 8/ 24 => I get 8 executions => 33% KO
> > 5 / 24 => I get 5 executions => 20% OK
> >
> >
> > Regards
> > Philippe
> >
> >
> > On Wed, Oct 12, 2011 at 7:31 PM, David Parks <davidpark...@yahoo.com>
> wrote:
> >
> >> I did this as follows:
> >>
> >> * Thread group (define how many requests should be going through at one
> >> time)
> >>  * Random Controller (pick any of the sub controllers at random each
> >> iteration)
> >>    * Throughput Controller A [10%, By Percent]
> >>    * Throughput Controller B [40%, By Percent]
> >>    * Throughput Controller C [30%, By Percent]
> >>    * Throughput Controller D [20%, By Percent]
> >>
> >> This generates randomly distributed load over Controllers A-D according
> to
> >> the percentages defined.
> >>
> >> I also threw in a timer at the Random Controller level to limit the
> >> requests
> >> to once every X seconds, this way I could define the number of threads
> as
> >> representative of an real-world active user.
> >>
> >> Hope that gives some food for thought.
> >>
> >>
> >> -----Original Message-----
> >> From: Philippe Bossu [mailto:pbo...@gmail.com]
> >> Sent: Wednesday, October 12, 2011 10:13 AM
> >> To: jmeter-user@jakarta.apache.org
> >> Subject: Question about ThrouputController
> >>
> >> Hello,
> >> First thank's for your help and great JMeter product.
> >>
> >> I have the following requirement.
> >> I would like to execute 4 different samples at the following frequence:
> >>
> >>    - 10% for A
> >>   - 40% for B
> >>   - 30% for C
> >>   - 20% for D
> >>
> >> A,B,C and D do search on different criterions.
> >> At least one of them must be executed because next sampler will use the
> >> search result.
> >>
> >>
> >> I tried to use ThroughputCOntroller but when I ran it once, none of the
> 4
> >> is
> >> executed.
> >> Random Controller does not do the job.
> >> InterleaveController as parent of TPC may be an option but I don't
> >> understand how to use it with others
> >> SwitchController might also be an option based on a question sebb
> answered
> >> to on the mailing list but how to randomize ?
> >>
> >>
> >> Thank you for your help.
> >> Regards
> >>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: jmeter-user-unsubscr...@jakarta.apache.org
> >> For additional commands, e-mail: jmeter-user-h...@jakarta.apache.org
> >>
> >>
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: jmeter-user-unsubscr...@jakarta.apache.org
> > For additional commands, e-mail: jmeter-user-h...@jakarta.apache.org
> >
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: jmeter-user-unsubscr...@jakarta.apache.org
> For additional commands, e-mail: jmeter-user-h...@jakarta.apache.org
>
>

Reply via email to