You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@santuario.apache.org by "Marc Giger (JIRA)" <ji...@apache.org> on 2012/09/24 20:05:08 UTC

[jira] [Commented] (SANTUARIO-346) Create Memory + Performance tests for the stax code

    [ https://issues.apache.org/jira/browse/SANTUARIO-346?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13461954#comment-13461954 ] 

Marc Giger commented on SANTUARIO-346:
--------------------------------------

To be able to explain the graphs in detail I need some time to analyze the results.

Still some notes:

- Just because we are streaming doesn't mean it _must_ be faster per se. Santuario seems to do an excellent job regarding to it's "time" performance.
- The XmlReaderToWriter.writeAll(xmlStreamReader, xmlStreamWriter); used for testing the outbound performance seems not to be the most efficient way. (It's always one of the top entries during profiling) Expect a little bit better performance under real conditions.
- I'm sure there is still a lot of room for improvements. I already have some ideas in the pipeline.
- The peaks on the graphs are explainable by the GC.
- The memory consumption increases with the document size in the decryption case. This is not expected and for the moment I would say it's a bug.
- The memory consumption for the signature creation case makes me nervous. It's expected that it needs a lot of memory but not that much. Bug?

The measurement was made with fully signed resp. encrypted documents. The numbers will most probably differ with partial signed / encrypted documents.

I think the xmlsec processing could be done faster with a better StAX API (not proved). A lot of code (All XMLSecEvent classes, code in the XMLSecStreamReader, code in the XMLSecEventReader) could be
left away if we had direct access to the current namespace scope. I've never understood why it isn't exposed. As far as I understand, StAX Parsers have to manage it anyway... Btw, CXF has the same problem and solved it via reflection.

That's it for the moment.
                
> Create Memory + Performance tests for the stax code
> ---------------------------------------------------
>
>                 Key: SANTUARIO-346
>                 URL: https://issues.apache.org/jira/browse/SANTUARIO-346
>             Project: Santuario
>          Issue Type: Task
>            Reporter: Colm O hEigeartaigh
>            Assignee: Marc Giger
>             Fix For: Java 2.0.0
>
>         Attachments: encryption-memory-inbound.png, encryption-memory-outbound.png, encryption-times-inbound.png, encryption-times-outbound.png, signature-memory-inbound.png, signature-memory-outbound.png, signature-times-inbound.png, signature-times-outbound.png
>
>
> This task is to create memory and performance tests for the streaming code analogous to the tests in WSS4J. We can add testng as a dependency for these tests if it makes it easier. The end result should be some data that we can use to publicize the new implementation etc.
> Colm.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira