Erlang Mailing Lists

Author Message

<  Yaws mailing list  ~  garbage collection process_options

Guest
Posted: Wed Apr 07, 2010 11:59 am Reply with quote
Guest
Hi all,

We've run into a problem where by if a lot of clients keep connections
open for a long time using keepalive and a lot of data passes through
the connection, the yaws erlang processes get rather large. We've had
over 3GB in production on some occasions. This is rather undesired so
I've taken the liberty of adding a garbage collection tuning knob to the
yaws configuration. The default configuration is the current behavior
which is more than likely the desired behavior for most.

I put the change on its own branch called "process_options"

> git pull git@github.com:tpodowd/yaws.git process_options

(I think this is the git syntax for pulling the branch. New to git)

process_options takes the same garbage collection arguments as the
erlang:spawn_opt/4 function.

Examples would be:

# Default behavior. Default garbage collection.
process_options: "[]"

# Specifically set a different fullsweep_after value. See spawn_opt/4
# for more details.
process_options: "[{fullsweep_after, 20}]"

Only the two options fullsweep_after and min_heap_size have any effect
and any other options are ignored.

Initially, I tried to configure it without the quotes so it would be
more natural, but the yaws_config tokenizer didn't appreciate the extra
syntax. Quoting seems to work well without changing too much code and
keeps the changes simple.

Please let me know if this is useful as is.

Best regards,

Tom.


------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Erlyaws-list mailing list
Erlyaws-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/erlyaws-list
Post received from mailinglist
Guest
Posted: Mon Apr 12, 2010 7:42 am Reply with quote
Guest
Thomas O'Dowd wrote:
> Hi all,
>
> We've run into a problem where by if a lot of clients keep connections
> open for a long time using keepalive and a lot of data passes through
> the connection, the yaws erlang processes get rather large. We've had
> over 3GB in production on some occasions. This is rather undesired so
> I've taken the liberty of adding a garbage collection tuning knob to the
> yaws configuration.


Nice, patch merged to master. Thanks.


> I put the change on its own branch called "process_options"
>
>> git pull git@github.com:tpodowd/yaws.git process_options
>
> (I think this is the git syntax for pulling the branch. New to git)
>

Aren't we all!

# git pull git://github.com/tpodowd/yaws.git process_options

Does it.


/klacke

------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Erlyaws-list mailing list
Erlyaws-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/erlyaws-list
Post received from mailinglist

Display posts from previous:  

All times are GMT
Page 1 of 1
This forum is locked: you cannot post, reply to, or edit topics.

Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You can attach files in this forum
You can download files in this forum