You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jmeter-dev@jakarta.apache.org by Mike Stover <ms...@apache.org> on 2002/08/21 20:26:43 UTC

Re: Mail protocols for JMeter

On 21 Aug 2002 at 12:25, Jason Corbett wrote:

> Hello JMeter gurus,
> 
>   I have a need to stress a mail server.  I am planning on using jmeter, 
> as most of the framework is very well done.  I have looked at the 
> documentation, including the developer documentation.  I think I 
> understand how to add a protocol, but I have one problem.  I did see a 
> mail on the user mailing list, but it didn't seem to have a resolution. 

That's great.  There is someone who has done this previously, but his company won't release 
the code to Apache.  It's frustrating that someone else has to do it all over again.

>  Basically I have two problems:
> 
> 1. I have to deal with unique users.
>     Instead of a thread group, I need a user group.  Currently I can't 
> find the ability to specify a pattern for unique users in jmeter so I 
> plan on sub classing Thread Group object to add this.  Is this the right 
> plan, I looked at the feature requests, and didn't see anything about 
> this so I assume there aren't any current plans to add this.

Thread Group = User Group.  When you say you need unique users, I'm not exactly sure 
what you mean.  Each user/thread in JMeter gets its own thread, and runs independently of 
the other users/threads.  If you need each user to do different things, there are ways to do 
that too, though they are more limited.  There have been some recent enhancements that have 
improved this ability.  You should, at least, describe more fully what you mean before jumping 
into this one.

> 
> 2. Because of the size of the stress test, I will need to use several 
> machines simultaniously to generate the needed load.  I saw an emial on 
> the user list about how JMeter will only alow running a test on one 
> remote machine at a time, I would like to distrubute the load generating 
> to several machines.  How hard will it be to do this, are there current 
> plans to do so?

It's already been fixed.  It was just a GUI problem.

> 
> 
> I appreciate any answer you have to this and any tips you might have / 
> places to start.  I've looked over the code and I think I can implement 
> most things just fine.  One of the protocols I plan on implementing is 
> IMAP, but IMAP  clients typically keep the connection open and rescan 
> for new mails.  I am planning on writing an IMAP connection  manager 
> similar in purpose to the JDBC connection manager, I think a very basic 
> one wouldn't be hard to implement.  

Yes, you have the right idea.  

Good luck!  Feel free to ask as many questions as you need.

-Mike
> 
> Thanks in advance,
> Jason Corbett
> 
> 
> --
> To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
> For additional commands, e-mail: <ma...@jakarta.apache.org>
> 



--
Michael Stover
mstover1@apache.org
Yahoo IM: mstover_ya
ICQ: 152975688

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: Mail protocols for JMeter

Posted by Mike Stover <ms...@apache.org>.
On 21 Aug 2002 at 14:53, Jason Corbett wrote:

> Is there an example in the code on how to do this?  

It's not something you do in code - you do it in the GUI when you set up test elements.  There 
are some different counters you can use, and there is a User Parameters config element that 
would allow you to create explicit values for different threads.  That sounds like what you want 
and it would be easiest to use.  If you have the latest JMeter code from CVS, then fire it up, 
and check out the Add-->Config Element-->User Parameters element.  It works like user-
defined values, so your email address would look like:

${user}@mail.host.com


>Wow, I thought it 
> was going to be alot harder to get this working, thanks.  Also is it 
> possible to distribute a single thread group amongst different remote 
> machines.  The reason I ask this is in my email stressing I need to have 
> several machines running the test, but each one needs to have a 
> different set of user configurations to login as.  So I might want 2000 

The remote testing sends the same test plan to any remote servers you want.  This means 
each remote server gets a copy of the exact same test, with all its threadgroups.  This is 
probably not ideal for you, unfortunately, as you'd have no way of making it different from one 
remote machine to the next.

On second thought - I wonder if you could configure your test, fire up one remote machine, 
then replace just the User Parameters element, and fire up the next remote machine?  It's kind 
of diabolical to change the test while JMeter is running the test, and it might blow up in your 
face.  But then again, it might let you do exactly what you want.  Interesting thought.

> IMAP users, (user imap1 through imap2000), but because of the large size 
> I might want to use 3 or 4 machines to distribute this across.  I can 
> create support for the mail stressing protocols without this, however it 
> won't be able to scale up to as many users without this.  I suppose 
> another possiblity (though not as pretty) would be to be able to 
> configure different thread groups, and run a specific thread group per 
> machine, would that be easier to configure?

If my above idea doesn't work, then yes, it'd be easier to run the different machines 
separately.  The downside being that the data from the different machines won't get combined.

--
Michael Stover
mstover1@apache.org
Yahoo IM: mstover_ya
ICQ: 152975688

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: Mail protocols for JMeter

Posted by Jason Corbett <jc...@caldera.com>.
Is there an example in the code on how to do this?  Wow, I thought it 
was going to be alot harder to get this working, thanks.  Also is it 
possible to distribute a single thread group amongst different remote 
machines.  The reason I ask this is in my email stressing I need to have 
several machines running the test, but each one needs to have a 
different set of user configurations to login as.  So I might want 2000 
IMAP users, (user imap1 through imap2000), but because of the large size 
I might want to use 3 or 4 machines to distribute this across.  I can 
create support for the mail stressing protocols without this, however it 
won't be able to scale up to as many users without this.  I suppose 
another possiblity (though not as pretty) would be to be able to 
configure different thread groups, and run a specific thread group per 
machine, would that be easier to configure?

Jason Corbett

Mike Stover wrote:

>On 21 Aug 2002 at 12:43, Jason Corbett wrote:
>
>  
>
>>[snip]
>>    
>>
>>Sorry about that, I wasn't very clear.  In each thread I need to be able 
>>to know a number of sorts.  I need for each login to be a separate user, 
>>so in my configuration object I want to be able to put in a pattern for 
>>the username like "user%n@mail.host.com", where %n would be replaced by 
>>the thread number.  Is there a way my configuration object could know 
>>the thread number it is so it could handle this?
>>    
>>
>
>Yes, this is already possible.
>
>--
>Michael Stover
>mstover1@apache.org
>Yahoo IM: mstover_ya
>ICQ: 152975688
>
>--
>To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
>For additional commands, e-mail: <ma...@jakarta.apache.org>
>
>
>  
>



--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: Mail protocols for JMeter

Posted by Mike Stover <ms...@apache.org>.
On 21 Aug 2002 at 12:43, Jason Corbett wrote:

> 
>[snip]
> >
> Sorry about that, I wasn't very clear.  In each thread I need to be able 
> to know a number of sorts.  I need for each login to be a separate user, 
> so in my configuration object I want to be able to put in a pattern for 
> the username like "user%n@mail.host.com", where %n would be replaced by 
> the thread number.  Is there a way my configuration object could know 
> the thread number it is so it could handle this?

Yes, this is already possible.

--
Michael Stover
mstover1@apache.org
Yahoo IM: mstover_ya
ICQ: 152975688

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: Mail protocols for JMeter

Posted by Jason Corbett <jc...@caldera.com>.

Mike Stover wrote:

>Thread Group = User Group.  When you say you need unique users, I'm not exactly sure 
>what you mean.  Each user/thread in JMeter gets its own thread, and runs independently of 
>the other users/threads.  If you need each user to do different things, there are ways to do 
>that too, though they are more limited.  There have been some recent enhancements that have 
>improved this ability.  You should, at least, describe more fully what you mean before jumping 
>into this one.
>  
>
Sorry about that, I wasn't very clear.  In each thread I need to be able 
to know a number of sorts.  I need for each login to be a separate user, 
so in my configuration object I want to be able to put in a pattern for 
the username like "user%n@mail.host.com", where %n would be replaced by 
the thread number.  Is there a way my configuration object could know 
the thread number it is so it could handle this?

>It's already been fixed.  It was just a GUI problem.
>  
>
Thanks, haven't gotten to running a remote test yet, didn't know.


Jason Corbett


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>