Glenn Nielsen wrote:
[snip]
>
> I just had an idea (dangerous things) regarding tag pooling optimizations.
>
> When Jasper translates a page it should be able to generate information
> about which tag handler classes it needs, and for each tag handler, the
> profile of the attribute/value pairs. At runtime Jasper could make one call
> to a tag pooling synchronized method to get all available instances of the tag
>handlers
> it needs. Any tag handlers/attribute profiles it couldn't obtain, it would have
> to create. Then it would manage its own local tag pool during the execution
> of the request. On termination of the request, after the page has been committed
> to the remote client, it would make one call to a tag pooling synchronized
> method to recycle/add the tag handlers it used. So there would only be 2
> synchronized methods per page for implementing tag pooling regardless of
> how many tags are used. And you have the benifits of minimizing JVM memory
> usage by sharing a global JVM tag pool.
>
that sparked something..
If we just bite the bullet and modify Jasper to correctly determine tag
handler usage within a page (i.e. not get a new (from pool or "new") tag
each time) then we can probably get the best of both worlds -- local
reuse of tag handler variables (I don't like to call that a pool) plus
application wide tag pooling. If application wide tag pooling is too expensive,
then we can chunk it. Regardless, the per page reuse should be a big
gain.
Next step might be to determine if, in certain situations, we can not re-call
tag setters. The spec says that attributes set should be "persistent".
Rickard's test case would really benefit from setter optimization because
most time was spent in body of setter methods.
Any comments?
btw, If i start tinkering, should I work with jasper34 or the 3.3 stuff?
-casey
> Regards,
>
> Glenn
>
> ----------------------------------------------------------------------
> Glenn Nielsen [EMAIL PROTECTED] | /* Spelin donut madder |
> MOREnet System Programming | * if iz ina coment. |
> Missouri Research and Education Network | */ |
> ----------------------------------------------------------------------