Go to file
Peter Hartmann 1c901913c0 QNetworkAccessManager: add public methods to pre-TCP/pre-SSL-connect
If an app knows it needs to connect to a host beforehand, it can "warm up" the
connection cache by making DNS lookup, TCP (and if needed SSL) handshake before
the actual HTTP request is sent. When the HTTP request is made, it will be
considerably faster when there is already a working connection.

Here are some typical results from the benchmark:

* Linux desktop with Ethernet:
  "http://www.google.com" full request: 279 ms, pre-connect request: 61 ms,
    difference: 218 ms
  "https://www.google.com" full request: 344 ms, pre-connect request: 60 ms,
    difference: 284 ms

* mobile device (BlackBerry 10) with Wifi:
  "https://www.google.com" full request: 898 ms, pre-connect request: 159 ms,
    difference: 739 ms
  "http://www.google.com" full request: 707 ms, pre-connect request: 200 ms,
    difference: 507 ms

Task-number: QTBUG-30771
Change-Id: I3566b7f08216ab93a39e2024ae7d1ceb7ae21891
Reviewed-by: Jonas Gastal <gastal@intel.com>
Reviewed-by: Richard J. Moore <rich@kde.org>
2013-06-03 23:16:08 +02:00
bin get rid of syncqt wrapper scripts 2013-05-13 21:54:48 +02:00
config.tests Add xcb-xkb to 3rd party libs 2013-05-07 22:43:14 +02:00
dist Make QTime::toString output milliseconds for Qt::TextDate, Qt::ISODate. 2013-06-03 17:05:12 +02:00
doc Update Urls to CMake docs. 2013-05-20 12:06:48 +02:00
examples Merge remote-tracking branch 'origin/stable' into dev 2013-05-23 21:27:07 +02:00
lib Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
mkspecs Merge remote-tracking branch 'origin/stable' into dev 2013-05-23 21:27:07 +02:00
qmake Merge remote-tracking branch 'origin/stable' into dev 2013-05-23 21:27:07 +02:00
src QNetworkAccessManager: add public methods to pre-TCP/pre-SSL-connect 2013-06-03 23:16:08 +02:00
tests QNetworkAccessManager: add public methods to pre-TCP/pre-SSL-connect 2013-06-03 23:16:08 +02:00
tools Merge remote-tracking branch 'origin/stable' into dev 2013-05-23 21:27:07 +02:00
util Don't show a separate inspector for child windows. 2013-04-23 07:45:22 +02:00
.gitattributes Update the git-archive export options 2012-09-07 15:39:31 +02:00
.gitignore tst_qdbusabstractinterface: generate interface at compile time 2013-05-09 12:35:39 +02:00
.qmake.conf require modules to define their version 2013-03-06 18:01:13 +01:00
.tag Update the git-archive export options 2012-09-07 15:39:31 +02:00
configure Merge remote-tracking branch 'origin/stable' into dev 2013-05-23 21:27:07 +02:00
configure.bat get rid of syncqt wrapper scripts 2013-05-13 21:54:48 +02:00
header.BSD Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
header.FDL Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
header.LGPL Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
header.LGPL-ONLY Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
INSTALL INSTALL: Fix URL of Installing Qt documentation 2013-04-11 16:09:07 +02:00
LGPL_EXCEPTION.txt Change copyrights from Nokia to Digia 2012-09-22 19:20:11 +02:00
LICENSE.FDL Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
LICENSE.GPL Add the LICENSE.GPL file to the module referenced from license headers 2012-05-20 22:41:08 +02:00
LICENSE.LGPL Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
LICENSE.PREVIEW.COMMERCIAL Change copyrights from Nokia to Digia 2012-09-22 19:20:11 +02:00
qtbase.pro always create qt_tool_syncqt.pri when shadow-building 2013-05-15 05:06:15 +02:00
sync.profile Hide Harfbuzz from the outer world 2013-03-13 14:46:26 +01:00