or the memory montitor in rabbitmq<br><div class="gmail_quote"><div dir="ltr">On Mon, 21 Nov 2016 at 19:36, Roger Lipscombe <<a href="mailto:roger@differentpla.net">roger@differentpla.net</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">It sounds like the existing high memory alarm would be enough...?<br class="gmail_msg">
<br class="gmail_msg">
See <a href="http://erlang.org/doc/man/memsup.html" rel="noreferrer" class="gmail_msg" target="_blank">http://erlang.org/doc/man/memsup.html</a><br class="gmail_msg">
<br class="gmail_msg">
On 21 November 2016 at 18:29, Lyn Headley <<a href="mailto:lheadley@kcptech.com" class="gmail_msg" target="_blank">lheadley@kcptech.com</a>> wrote:<br class="gmail_msg">
> Erlangers,<br class="gmail_msg">
><br class="gmail_msg">
> I am looking to write a process that makes sure my node does not run<br class="gmail_msg">
> out of memory and crash. What I would like is a function F that<br class="gmail_msg">
> returns a number that represents the amount of memory my node is<br class="gmail_msg">
> using. If that number gets above a threshold T, I will kill a process<br class="gmail_msg">
> (carefully and safely, possibly after dumping its ets table to disk).<br class="gmail_msg">
> After the process exits, I would immediately call the same function F<br class="gmail_msg">
> and see whether the number it returns is now less than my threshold T.<br class="gmail_msg">
> If not, kill another process, etc.<br class="gmail_msg">
><br class="gmail_msg">
> Can I easily write this function F? Does the 'total' number from<br class="gmail_msg">
> erlang:memory serve my needs here? In particular, will it go down<br class="gmail_msg">
> immediately after I kill a process?<br class="gmail_msg">
><br class="gmail_msg">
> Given a carefully chosen value for threshold T, and assuming no atoms<br class="gmail_msg">
> or binaries are being allocated, (heap data and ets tables are the<br class="gmail_msg">
> main drivers of memory use), will this strategy indeed prevent my node<br class="gmail_msg">
> from crashing as long as I kill processes faster than they can grow?<br class="gmail_msg">
><br class="gmail_msg">
> Other thoughts?<br class="gmail_msg">
><br class="gmail_msg">
> -Lyn<br class="gmail_msg">
> _______________________________________________<br class="gmail_msg">
> erlang-questions mailing list<br class="gmail_msg">
> <a href="mailto:erlang-questions@erlang.org" class="gmail_msg" target="_blank">erlang-questions@erlang.org</a><br class="gmail_msg">
> <a href="http://erlang.org/mailman/listinfo/erlang-questions" rel="noreferrer" class="gmail_msg" target="_blank">http://erlang.org/mailman/listinfo/erlang-questions</a><br class="gmail_msg">
_______________________________________________<br class="gmail_msg">
erlang-questions mailing list<br class="gmail_msg">
<a href="mailto:erlang-questions@erlang.org" class="gmail_msg" target="_blank">erlang-questions@erlang.org</a><br class="gmail_msg">
<a href="http://erlang.org/mailman/listinfo/erlang-questions" rel="noreferrer" class="gmail_msg" target="_blank">http://erlang.org/mailman/listinfo/erlang-questions</a><br class="gmail_msg">
</blockquote></div>