I have used both Tapestry and HiveMind under high production loads and have
never found any memory leaks in the frameworks themselves.  This includes
memory intensive, high volume workflow and image processing applications for
large financial institutions.

However, nearly every application I have worked on has experienced memory
leaks at times, often times severe.  Sometimes it was my own code.  Often it
was 3rd party libraries like caching frameworks (ehcache constructs had a
badly leaking MutexCache implementation - fixed last year), dao frameworks
(iBatis had an LRU cache which did not properly invalidate every other
expired entry - also fixed), JDBC drivers (just worked with a version of an
AS/400 driver which leaked live a sieve - recently fixed), and the JDK
(StringBuffer in 1.4 anyone? - how about using Java 2D?).  My experience
tells me that if you haven't run your application through JProfiler and
looked for leaks, there is a *very* good chance your app is leaking memory,
often times in unexpected places.

Just because your application is a Tapestry application does not mean the
leak is caused by Tapestry - odds are against you on that.

My suggestion would be to run your application under JProfiler and put some
load on it.  It is very simple to do.  Watch the heap telemetry and see if
it grows monotonically.  Watch the object allocations and sizes for the
same.

If you have some empirical evidence to support a suspected leak in Tapestry,
then present it here.  I assure you Jesse and the other developers would be
eager to fix them.

HTH,

Ben



On 8/9/07, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
>
> Have you ever observed the memory usage for your Tapestry application?
>
> For example, make a simple HelloWorld Application and load the page
> regularly using HTTP_LOAD. Then watch how the memory consumption grows and
> grows .... especially after an hour.
>
> Has anyone got a solution how avoid this leakage?
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

Reply via email to