{"action":"created","issue":{"url":"https://api.github.com/repos/WPO-Foundation/webpagetest/issues/584","repository_url":"https://api.github.com/repos/WPO-Foundation/webpagetest","labels_url":"https://api.github.com/repos/WPO-Foundation/webpagetest/issues/584/labels{/name}","comments_url":"https://api.github.com/repos/WPO-Foundation/webpagetest/issues/584/comments","events_url":"https://api.github.com/repos/WPO-Foundation/webpagetest/issues/584/events","html_url":"https://github.com/WPO-Foundation/webpagetest/issues/584","id":142682883,"number":584,"title":"Chrome tests large numbers of block requests are slower than test with the requests in","user":{"login":"andydavies","id":427052,"avatar_url":"https://avatars.githubusercontent.com/u/427052?v=3","gravatar_id":"","url":"https://api.github.com/users/andydavies","html_url":"https://github.com/andydavies","followers_url":"https://api.github.com/users/andydavies/followers","following_url":"https://api.github.com/users/andydavies/following{/other_user}","gists_url":"https://api.github.com/users/andydavies/gists{/gist_id}","starred_url":"https://api.github.com/users/andydavies/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/andydavies/subscriptions","organizations_url":"https://api.github.com/users/andydavies/orgs","repos_url":"https://api.github.com/users/andydavies/repos","events_url":"https://api.github.com/users/andydavies/events{/privacy}","received_events_url":"https://api.github.com/users/andydavies/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2016-03-22T15:20:28Z","updated_at":"2016-03-28T14:40:40Z","closed_at":null,"body":"I often block third-parties to understand what impact they're having on a page, but I've noticed page loads get longer in Chrome when there's a large number of block requests.\r\n\r\ntelegraph.co.uk in Firefox\r\n  http://www.webpagetest.org/result/160205_JB_fc1c78112a10e001d874500285adb534/\r\n\r\ntelegraph.co.uk in Firefox with 3rd Parties blocked\r\n  http://www.webpagetest.org/result/160205_TE_0352ac18021c35bad63d55526671dca7/\r\n\r\ntelegraph.co.uk in Chrome with 3rd Parties blocked\r\n  http://www.webpagetest.org/result/160205_GF_2150882829a0d952461aadaa82521306/\r\n\r\nFrom the Chrome waterfall it looks like the overhead of blocking in the extension impacts the test, and the CPU is maxed out (unlike the FF test)"},"comment":{"url":"https://api.github.com/repos/WPO-Foundation/webpagetest/issues/comments/202421293","html_url":"https://github.com/WPO-Foundation/webpagetest/issues/584#issuecomment-202421293","issue_url":"https://api.github.com/repos/WPO-Foundation/webpagetest/issues/584","id":202421293,"user":{"login":"pmeenan","id":444165,"avatar_url":"https://avatars.githubusercontent.com/u/444165?v=3","gravatar_id":"","url":"https://api.github.com/users/pmeenan","html_url":"https://github.com/pmeenan","followers_url":"https://api.github.com/users/pmeenan/followers","following_url":"https://api.github.com/users/pmeenan/following{/other_user}","gists_url":"https://api.github.com/users/pmeenan/gists{/gist_id}","starred_url":"https://api.github.com/users/pmeenan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pmeenan/subscriptions","organizations_url":"https://api.github.com/users/pmeenan/orgs","repos_url":"https://api.github.com/users/pmeenan/repos","events_url":"https://api.github.com/users/pmeenan/events{/privacy}","received_events_url":"https://api.github.com/users/pmeenan/received_events","type":"User","site_admin":false},"created_at":"2016-03-28T14:40:40Z","updated_at":"2016-03-28T14:40:40Z","body":"Enabling blocking (or modifying request headers) in Chrome is exceedingly expensive because it enables the code path that turns on the use of the blocking webrequest extension API (which seems to have gotten even slower in Chrome over time).\r\n\r\nIt looks like all of your blocks were FQDN's which could potentially be a fast path and be handled at the DNS layer instead.  Unfortunately the block feature allows for blocking a substring anywhere in the URL but if I split the blocking into 2 fields (one for substrings and one for domains) would that meet your needs?  That would match the capability on mobile anyway which can only block at the fqdn level."}}