[Seaside] instances of WAComponent

Bany, Michel mbany at cincom.com
Fri May 19 09:39:52 UTC 2006


> 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.


More information about the Seaside mailing list