axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Amila Jayasekara (JIRA)" <>
Subject [jira] Updated: (RAMPART-298) Client using SymmetricBinding runs slower and slower as more requests are made
Date Wed, 05 Jan 2011 02:48:45 GMT


Amila Jayasekara updated RAMPART-298:

    Attachment: rampart-receiver.pdf

Carried out some performance tests on this issue. As for 30th December 2010 following results
were found during sign and encryption. Rampart used for this experiment was built using the
trunk code that was available on 30th December 2010.

Results show that time to serve a request increases with the number of requests. Thus, when
the number of requests increases, time increases in a near exponential manner. Theoretically
when the number of requests increases time should increase in a linear manner. 

To isolate the issue, time values were collected for each module in each request. Rampart
has 5 modules. They are,
	1. RampartReceiver 
	2. WSDoAllReceiver 
	3. PostDispatchVerificationHandler 
	4. WSDoAllSender 
	5. RampartSender

All server side modules consumed a constant time per each requests. All modules in client
side also showed a constant time per request, except module "RampartReceiver". When the number
of requests increases time to execute a "RampartReceiver" module also increases. This behavior
is best explained using the attached rampart-receiver.pdf document.


> Client using SymmetricBinding runs slower and slower as more requests are made
> ------------------------------------------------------------------------------
>                 Key: RAMPART-298
>                 URL:
>             Project: Rampart
>          Issue Type: Bug
>          Components: rampart-core
>    Affects Versions: 1.5
>            Reporter: Dennis Sosnoski
>         Attachments:, rampart-receiver.pdf
> Tests run with Axis2/Rampart client talking to an Axis2/Rampart server using SymmetricBinding
get slower and slower as the number of requests goes up. Here are some typical figures:
> 100 requests - 8.0 seconds
> 200 requests - 19.1 seconds
> 300 requests - 40.9 seconds
> 400 requests - 77.0 seconds
> 500 requests - 134.4 seconds
> Since this appears to be strictly a function of the number of requests run using a single
client, I suspect the Rampart client code is doing something like caching all the generated
secret keys and then doing a linear search to find the one referenced in a response.
> To demonstrate the problem using the attached code, first edit the build properties to
set the path to the Axis2 installation, then build using "ant" command, upload .aars to server,
and run test using "ant run-encr". The number of requests can be changed in the
file before each test run.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message