<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Fri, May 12, 2017 at 7:22 PM, Augie Fackler <span dir="ltr"><<a href="mailto:raf@durin42.com" target="_blank">raf@durin42.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span class="gmail-">On Thu, May 11, 2017 at 10:51:23AM -0700, Siddharth Agarwal wrote:<br>
> # HG changeset patch<br>
> # User Siddharth Agarwal <<a href="mailto:sid0@fb.com">sid0@fb.com</a>><br>
> # Date 1494525005 25200<br>
> #      Thu May 11 10:50:05 2017 -0700<br>
> # Node ID fa570690257581e3197f8730b6522e<wbr>80d58a3f45<br>
> # Parent  052bd5cfe3769b10c64a4a39d9734a<wbr>2740d44e16<br>
> clone: add a server-side option to disable full getbundles (pull-based clones)<br>
<br>
</span>queued, thanks<br>
<br>
very nice - I can think of some repositories that should enable<br>
clonebundles and this new rejection mechanism to save tons of server<br>
load. :)<br></blockquote><div><br></div><div>FWIW, it is common for >95% of <a href="http://hg.mozilla.org">hg.mozilla.org</a>'s served bytes to be handled from clone bundles via S3/CDN. Our daily record saw <span style="font-size:13px;font-family:arial,sans,sans-serif;text-align:right">42,760,071,088,706 of </span><span style="font-size:13px;font-family:arial,sans,sans-serif;text-align:right">43,134,314,834,541 (99.13%) of bytes served from S3. Most of this load is Firefox's CI cloning the Firefox repositories. We make heavy use of volatile "spot" instances rather than permanent infrastructure, so there's a lot of cloning go on, even with aggressive reuse of clones on clients.</span></div><div><span style="font-size:13px;font-family:arial,sans,sans-serif;text-align:right"><br></span></div><div><span style="font-size:13px;font-family:arial,sans,sans-serif;text-align:right">If we didn't have clone bundles, we'd need to roll our own caching layer and/or pay a heavy cost for extra server infrastructure. Ironically, clone bundles has offloaded so much CPU from servers that we can afford to take computational hits on the server, such as allowing bundle1 clients to clone/pull from generaldelta repos and leaving full bundle clones enabled. But I'm still glad we have config knobs to lock out legacy clients at the first sign of scaling trouble.<br></span> </div></div></div></div>