[Seaside] instances of WAComponent

Dmitry Dorofeev dima-sender-3c337a at yasp.com
Fri May 19 09:51:14 UTC 2006


In Squeak I do this once per day on a production Seaside server:

WARegistry clearAllHandlers.
MCFileBasedRepository flushAllCaches.
Smalltalk garbageCollect.

Just to clear memory of Seaside things.
-Dmitry.

Bany, Michel wrote:
>>Why do I use this solution? Because the garbage collector 
>>(VW) does not remove old instances (unreferenced). When 
>>instances of WAComponent are big, the image grows, grows... 
> 
> 
> The VW garbage collector *does* remove the unreferenced instances,
> it just does not tell you when.
> 
> 
>>Each sessions contains components... When there is a lot of 
>>users (sessions), there is much more components! 
>>Server falls unusable! :-(
> 
> 
> You can get rid of expired sessions using this :
> 
> Seaside.WARegistry allGeneralInstances do: [:ea | ea
> unregisterExpiredHandlers]
> 
> To prevent the image growth, you may want to execute the above
> every now and then.  
> 
> You may also want to give more memory to VW. The default is 160MB, a bit
> small
> for a Seaside server.
> 
> DefaultMemoryUpperBound := 500 * 1000000. "500MB"
> DefaultGrowthRegimeUpperBound := 100 * 1000000.  "100MB"
> DefaultFreeMemoryUpperBound := 50 * 1000000. "50MB"
> ObjectMemory installMemoryPolicy: self new setDefaults.
> 
> HTH,
> Michel.
> _______________________________________________
> Seaside mailing list
> Seaside at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside


More information about the Seaside mailing list