> <span class="Apple-style-span" style="border-collapse: collapse; ">This type of UA-specific setting is something best left outside the spec entirely.</span><div><span class="Apple-style-span" style="border-collapse: collapse;"><br>
</span></div><div><span class="Apple-style-span" style="border-collapse: collapse;">Yup</span></div><div><span class="Apple-style-span" style="border-collapse: collapse;"><br></span><br><div class="gmail_quote">On Wed, Jul 8, 2009 at 10:08 AM, Drew Wilson <span dir="ltr"><<a href="mailto:atwilson@google.com">atwilson@google.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">I think Ian's decision to add no language to the spec is the correct one. To be clear, we were never asking for Ian to put a limit in the spec - rather, given the de facto existence of limits on some platforms, we wanted to discuss how those platforms should behave to ensure that they were still compliant with the specification.<div>

<br></div><div>Per previous discussions, some implementations have little or no overhead per worker (e.g. Firefox which uses a static thread pool to service worker tasks). On those platforms, it makes no sense to allow the user to specify a maximum number of workers, so having language in the spec saying that UAs "SHOULD" do so is inappropriate.</div>

<div><br></div><div>This type of UA-specific setting is something best left outside the spec entirely.</div><div><br></div><div>-atw<div><div></div><div class="ib"><br><div><br><div class="gmail_quote">On Wed, Jul 8, 2009 at 3:41 AM, Eduard Pascual <span dir="ltr"><<a href="mailto:herenvardo@gmail.com" target="_blank">herenvardo@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>On Wed, Jul 8, 2009 at 1:59 AM, Ian Hickson<<a href="mailto:ian@hixie.ch" target="_blank">ian@hixie.ch</a>> wrote:<br>


><br>
> I include below, for the record, a set of e-mails on the topic of settings<br>
> limits on Workers to avoid DOS attacks.<br>
><br>
> As with other such topics, the HTML5 spec allows more or less any<br>
> arbitrary behaviour in the face of hardware limitations. There are a<br>
> variety of different implementations strategies, and these will vary<br>
> based on the target hardware. How to handle a million new workers will be<br>
> different on a system with a million cores and little memory than a system<br>
> with one core but terabytes of memory, or a system with 100 slow cores vs<br>
> a system with 10 fast cores.<br>
><br>
> I have therefore not added any text to the spec on the matter. Please let<br>
> me know if you think there should really be something in the spec on this.<br>
><br>
<br>
</div>Shouldn't a per-user setting be the sanest approach for the worker<br>
limit? For example, it would quite make sense for me to want a low<br>
limit (let's say 10 or so) workers on my laptop's browser; but have no<br>
restriction (or a much higher one, like some thousand workers) on my<br>
workstation.<br>
Ian's point is key here: what's an appropriate limit for workers<br>
depends almost entirely on hardware resources (and probably also on<br>
implementation efficiency and other secondary aspects), and there is a<br>
*huge* variety of hardware configurations that act as web clients, so<br>
it's just impossible to hardcode a limit in the spec that works<br>
properly for more than a minority. At most, I would suggest a note<br>
like this in the spec "User agents SHOULD provide the user a way to<br>
limit the ammount of workers running at a time.": emphasis on the<br>
"SHOULD" rather than a "MUST", and also on the fact that the final<br>
choice is for users to make. Then it'd be up to each implementor to<br>
decide on default, out-of-the-box limits for their browser (it would<br>
make sense, for example, if Chromium had a lower default limit than<br>
FF, since C's workers are more "expensive").<br>
<br>
Just my two cents.<br>
<br>
Regards,<br>
<font color="#888888">Eduard Pascual<br>
</font></blockquote></div><br></div></div></div></div>
</blockquote></div><br></div>