Based on my testing, with DiskPageStore#isSynchronous() of true
(non-default), the http threads do the writes themselves which can mean many
concurrent writes for many concurrent session requests. Not sure if you
meant to imply that it was irrelevant or just a little unintuitive. :)

Definitely one of the cooler parts of the Wicket code in my opinion!

On Thu, Aug 11, 2011 at 3:25 AM, Martin Grigorov <[email protected]>wrote:

> Do you experience slowness in disk write ?
> Any proofs like iostat/iotop output ?
>
> DiskPageStore#isSynchronous() means something slightly different.
> Asynchronous means that the worker http thread will not wait for the
> write to the disk, i.e. the write is detached. But writes are still
> synchronous in the special "page-saving-thread".
> Additionally NIO is used - each http session opens its own FileChannel
> that writes to a specific file for that session.
>
> On Thu, Aug 11, 2011 at 10:43 AM, Dan Retzlaff <[email protected]>
> wrote:
> > In the default configuration, SecondLevelCacheSessionStore is backed by
> > DiskPageStore which (by default) uses a single thread to save pages. This
> > can be customized by overriding Application.newSessionStore() and
> > DiskPageStore.isSynchronous().
> >
> > On Thu, Aug 11, 2011 at 12:32 AM, Martin Makundi <
> > [email protected]> wrote:
> >
> >> "Disk I/O slows down a LOT when run in parallel. Only one thread
> >> should do disk read/write at a time."
> >>
> >> Is serialization in Wicket performed using an executor or similar
> >> structure to optimize performance?
> >>
> >> **
> >> Martin
> >>
> >
>
>
>
> --
> Martin Grigorov
> jWeekend
> Training, Consulting, Development
> http://jWeekend.com
>

Reply via email to