{"action":"closed","issue":{"url":"https://api.github.com/repos/asciimoo/searx/issues/100","labels_url":"https://api.github.com/repos/asciimoo/searx/issues/100/labels{/name}","comments_url":"https://api.github.com/repos/asciimoo/searx/issues/100/comments","events_url":"https://api.github.com/repos/asciimoo/searx/issues/100/events","html_url":"https://github.com/asciimoo/searx/issues/100","id":42747103,"number":100,"title":"Improving response time : dns prefetch & tcp ssl pre-open","user":{"login":"dalf","id":1594191,"avatar_url":"https://avatars.githubusercontent.com/u/1594191?v=3","gravatar_id":"","url":"https://api.github.com/users/dalf","html_url":"https://github.com/dalf","followers_url":"https://api.github.com/users/dalf/followers","following_url":"https://api.github.com/users/dalf/following{/other_user}","gists_url":"https://api.github.com/users/dalf/gists{/gist_id}","starred_url":"https://api.github.com/users/dalf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dalf/subscriptions","organizations_url":"https://api.github.com/users/dalf/orgs","repos_url":"https://api.github.com/users/dalf/repos","events_url":"https://api.github.com/users/dalf/events{/privacy}","received_events_url":"https://api.github.com/users/dalf/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/asciimoo/searx/labels/enhancement","name":"enhancement","color":"84b6eb"}],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2014-09-15T07:29:00Z","updated_at":"2015-01-21T18:44:20Z","closed_at":"2015-01-21T18:44:20Z","body":"For each request, there is different steps :\r\n* resolve dns\r\n* open tcp connection\r\n* negociate ssl\r\n* send request\r\n* receive response\r\n* close connection\r\n\r\nThe first open can be optimize by prefetching dns. I guess it's a matter of 50 ms at most so... But it can be done easily by sending dns request with a timer (each hour for example).\r\n\r\nThe second and third one cost 100ms or more per request. If searx could start opening TCP connection when the user is one the search page, it could help. To implements this, a patch must done on grequests.\r\n\r\nOf course, as chromium, this implies some useless TCP connections ( https://code.google.com/p/chromium/issues/detail?id=116982 )\r\n"}}