<div>>If you put stats into public ets, than collector will not be<br>>overloaded with requests.<br></div><div><br></div><div>This is interesting. I also have thoughts about avoid DOS. But I don't understand how ETS will help here.</div>

<div><br></div><div>Here what I have. I have only one process that process clients requests. It really doesn't make sense to have more processes because the process does nothing but returns some pre-calculated value. If I store data in ETS my process will have to do additional work - extracting data from ETS.</div>

<div><br></div><div>Or maybe I am missing something? Please give the right direction here. Or maybe in my case it doesn't matter because my case is trivial?</div><div><br></div><div>Best regards,</div><div>Max</div><div>

<br></div><div><br></div><div><br></div><div class="gmail_quote">On Sun, Aug 26, 2012 at 12:04 PM, Max Lapshin <span dir="ltr"><<a href="mailto:max.lapshin@gmail.com" target="_blank">max.lapshin@gmail.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On Sun, Aug 26, 2012 at 12:02 PM, Michael Truog <<a href="mailto:mjtruog@gmail.com">mjtruog@gmail.com</a>> wrote:<br>


> There often is a habit with quick projects to throw data in ets, since it is<br>
> easy to access the data as global data.  This helps people coming from an<br>
> imperative programming background.  I don't see a good reason in the email<br>
> thread that shows that ets is the best solution,<br>
<br>
<br>
</div>But there is a good reason. It is performance. For example, in<br>
erlyvideo all major statistics data are<br>
collected not via gen_server:cal: you cannot ask process to tell its<br>
statistics, because<br>
it is very easy to DOS your server with such replies.<br>
<br>
If you put stats into public ets, than collector will not be<br>
overloaded with requests.<br>
</blockquote></div><br>