You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@wicket.apache.org by Martin Makundi <ma...@koodaripalvelut.com> on 2016/06/05 07:48:14 UTC

Blocking page serialization

Hi!

https://issues.apache.org/jira/browse/WICKET-6177

We have a performance issue with our Wicket app, page serialization causes
inconvenience to user because PageStoreManager.storeTouchedPages() blocks
the request until pageSerializer.serialize(page) has been handled.

Could this be solved by serializing the page in a separate thread and let
the request complete?

We have attempted to solve this before for 1.4x but it failed due to
thread-dependenciecs:  https://issues.apache.org/jira/browse/WICKET-5805

Any ideas how this could be solved with 7.x? This would bring a significant
performance boost on component-intensive pages. Simply using detachable
models does not solve the issue when the serialization of the component
hierarchy itself is slow.

Thanks.

**
Martin

Re: Blocking page serialization

Posted by Martin Makundi <ma...@koodaripalvelut.com>.
>
>
> Every part of the page storing related classes is easily replaceable!
> There is a chapter about it in the user guide.
>

The prolbem is that if we do it brute force in different thread, no
threadlocal requests will work during persistence and it will throw
exceptions.

How many components do you have?
> I have seen some pretty big pages with tables with many rows but this has
> not been a problem.
>

We have tables with 200x400 cells and each cell has nested structures which
brings to millions of components.

**
Martin



> On Jun 5, 2016 10:48 AM, "Martin Makundi" <
> martin.makundi@koodaripalvelut.com> wrote:
>
> > Hi!
> >
> > https://issues.apache.org/jira/browse/WICKET-6177
> >
> > We have a performance issue with our Wicket app, page serialization
> causes
> > inconvenience to user because PageStoreManager.storeTouchedPages() blocks
> > the request until pageSerializer.serialize(page) has been handled.
> >
> > Could this be solved by serializing the page in a separate thread and let
> > the request complete?
> >
> > We have attempted to solve this before for 1.4x but it failed due to
> > thread-dependenciecs:  https://issues.apache.org/jira/browse/WICKET-5805
> >
> > Any ideas how this could be solved with 7.x? This would bring a
> significant
> > performance boost on component-intensive pages. Simply using detachable
> > models does not solve the issue when the serialization of the component
> > hierarchy itself is slow.
> >
> > Thanks.
> >
> > **
> > Martin
> >
>

Re: Blocking page serialization

Posted by Martin Grigorov <ma...@gmail.com>.
Hi,

Every part of the page storing related classes is easily replaceable!
There is a chapter about it in the user guide.

How many components do you have?
I have seen some pretty big pages with tables with many rows but this has
not been a problem.
On Jun 5, 2016 10:48 AM, "Martin Makundi" <
martin.makundi@koodaripalvelut.com> wrote:

> Hi!
>
> https://issues.apache.org/jira/browse/WICKET-6177
>
> We have a performance issue with our Wicket app, page serialization causes
> inconvenience to user because PageStoreManager.storeTouchedPages() blocks
> the request until pageSerializer.serialize(page) has been handled.
>
> Could this be solved by serializing the page in a separate thread and let
> the request complete?
>
> We have attempted to solve this before for 1.4x but it failed due to
> thread-dependenciecs:  https://issues.apache.org/jira/browse/WICKET-5805
>
> Any ideas how this could be solved with 7.x? This would bring a significant
> performance boost on component-intensive pages. Simply using detachable
> models does not solve the issue when the serialization of the component
> hierarchy itself is slow.
>
> Thanks.
>
> **
> Martin
>

Re: Blocking page serialization

Posted by Martin Grigorov <ma...@gmail.com>.
Hi,

Every part of the page storing related classes is easily replaceable!
There is a chapter about it in the user guide.

How many components do you have?
I have seen some pretty big pages with tables with many rows but this has
not been a problem.
On Jun 5, 2016 10:48 AM, "Martin Makundi" <
martin.makundi@koodaripalvelut.com> wrote:

> Hi!
>
> https://issues.apache.org/jira/browse/WICKET-6177
>
> We have a performance issue with our Wicket app, page serialization causes
> inconvenience to user because PageStoreManager.storeTouchedPages() blocks
> the request until pageSerializer.serialize(page) has been handled.
>
> Could this be solved by serializing the page in a separate thread and let
> the request complete?
>
> We have attempted to solve this before for 1.4x but it failed due to
> thread-dependenciecs:  https://issues.apache.org/jira/browse/WICKET-5805
>
> Any ideas how this could be solved with 7.x? This would bring a significant
> performance boost on component-intensive pages. Simply using detachable
> models does not solve the issue when the serialization of the component
> hierarchy itself is slow.
>
> Thanks.
>
> **
> Martin
>