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 Rodrigo Madera <ro...@gmail.com> on 2009/03/23 20:54:58 UTC

Developing Ajax Push extensions

Hello community,

I recently asked on the Users List about HTTP Comet techniques (also
known as Ajax Push).
I have already sketched an initial design and I'll start coding
briefly into my copy of the trunk.

However, and in order to help the community, I wish to give the code
so it may be included into your own test branches so eventually it can
be used by more people. In order for that to happen I need your
veteran advice on JMeter conventions and common design guidelines.

But most of all, I want to hear opinions of this selected design and
I'm more than willing to discuss and implement what's needed to get
this going.

The changes would be:

    * org.apache.jmeter.protocol.http.sampler.HTTPSampler:
        - Add an "Async" attribute.
        - Add a "Persistent Channel" descriptor, where you can
optionally set a string identifier for the channel to use.
        - Add a "Timeout" field, specifying how much time we will wait
before giving-up waiting for an assynchronous response on the
persistent channel.

    * org.apache.jmeter.protocol.http.CATEGORY.CometPersistentChannel
        - Create this component. This will be the backbone of Comet
testing. Data received here will be passed to the active HTTPSampler
(if it's async flag is true).
        - Not sure what CATEGORY will be. For now it's on "sampler".

The usage would be something like:

    * Add a CometPersistentChannel with its request filled in.
    * Add some HTTPSamplers with Async turned on. Optionally configure
the Timeout and channel (if more than one available).
    * Use assertions to test your logic.

I welcome any suggestions on this design and I offer myself to help
get these changes done.

Thank you for your kind time,
Rodrigo Madera

---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org


Re: Developing Ajax Push extensions

Posted by sebb <se...@gmail.com>.
On 23/03/2009, Rodrigo Madera <ro...@gmail.com> wrote:
> Hello community,
>
>  I recently asked on the Users List about HTTP Comet techniques (also
>  known as Ajax Push).
>  I have already sketched an initial design and I'll start coding
>  briefly into my copy of the trunk.
>
>  However, and in order to help the community, I wish to give the code
>  so it may be included into your own test branches so eventually it can
>  be used by more people. In order for that to happen I need your
>  veteran advice on JMeter conventions and common design guidelines.
>
>  But most of all, I want to hear opinions of this selected design and
>  I'm more than willing to discuss and implement what's needed to get
>  this going.
>
>  The changes would be:
>
>     * org.apache.jmeter.protocol.http.sampler.HTTPSampler:
>         - Add an "Async" attribute.
>         - Add a "Persistent Channel" descriptor, where you can
>  optionally set a string identifier for the channel to use.
>         - Add a "Timeout" field, specifying how much time we will wait
>  before giving-up waiting for an assynchronous response on the
>  persistent channel.
>
>     * org.apache.jmeter.protocol.http.CATEGORY.CometPersistentChannel
>         - Create this component. This will be the backbone of Comet
>  testing. Data received here will be passed to the active HTTPSampler
>  (if it's async flag is true).
>
>         - Not sure what CATEGORY will be. For now it's on "sampler".

Sounds more like a configuration element, c.f. JDBC Config and JDBC Sampler.

>  The usage would be something like:
>
>     * Add a CometPersistentChannel with its request filled in.

What information is needed for the request?

>     * Add some HTTPSamplers with Async turned on. Optionally configure
>  the Timeout and channel (if more than one available).
>     * Use assertions to test your logic.
>
>  I welcome any suggestions on this design and I offer myself to help
>  get these changes done.

I assume that the HTTP Sampler will need to wait until all the Comet
Data has been returned, collecting the extra data as sub-samples.

This is similar to "Retrieve embedded resources", except that the URL
is not provided by scanning the HTML, but by the Comet config option,
and the URL may need to be polled multiple times.

Am I understanding it correctly?


>  Thank you for your kind time,
>  Rodrigo Madera
>
>  ---------------------------------------------------------------------
>  To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
>  For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org