Performance issues

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Performance issues

Joseph Blatter
Hi. I have some performance issues. Please note that I do not know the Seaside internals, just I want to know if it's possible to do the following things:

1) I want to preload the pages in a cache *before* they are displayed. Think in a Promise or Future object but for the renderer. Then the WAMyComponent is "ready to display" and all that I need is to send this mysterious object to the browser so is rendered.

2) I've read there is a LRUCache, and by observations it's inside the continuations i-var in the WASession object. I have this sequence

WAOne (open Two) -> WATwo (cancel) -> WAOne

When WAOne is displayed again (from an #answer: in WATwo) it seems to me it's rendered again because it stands 4 or 5 seconds to render in the browser. It's the component cached? Where it is if that's the case? Can I use that LRUCache or another one?

3) Does it make any difference ***in performance*** to make a really large #renderContentOn: with renders all the page *OR* cutting this #renderContentOn: into 20-30 or more methods and pass the renderer all the way down?

My facts is I cannot simplify my pages, they are complex and there are a lot of html inside there.

thanks

__________________________________________________
Correo Yahoo!
Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
Regístrate ya - http://correo.espanol.yahoo.com/
_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside

Reply | Threaded
Open this post in threaded view
|

Re: Performance issues

Lukas Renggli
> Hi. I have some performance issues. Please note that I do not know the
> Seaside internals, just I want to know if it's possible to do the following
> things:

We address a lot of performance and memory issues in Seaside 2.8. You
might want to try Seaside2.8a1-lr.220, it is noticeably faster.
However consider it early alpha quality.

> When WAOne is displayed again (from an #answer: in WATwo) it seems to me
> it's rendered again because it stands 4 or 5 seconds to render in the
> browser. It's the component cached? Where it is if that's the case? Can I
> use that LRUCache or another one?

The calling component can't be cached because it could change in the meantime.

> 3) Does it make any difference ***in performance*** to make a really large
> #renderContentOn: with renders all the page *OR* cutting this
> #renderContentOn: into 20-30 or more methods and pass the renderer all the
> way down?

No, message sends are cheap. Expensive are encoding, streaming and
property lookups.

I would split the render methods as far as possible, just for
maintainability and extensibility. The extra message sends don't
change something measurable.

> My facts is I cannot simplify my pages, they are complex and there are a lot
> of html inside there.

Can you provide an example? Are there big static parts (no links, no
forms) inside?

Cheers,
Lukas

--
Lukas Renggli
http://www.lukas-renggli.ch
_______________________________________________
Seaside mailing list
[hidden email]
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside