Updated Branches: refs/heads/master a2fab004b -> 0373ca358
TS-2474 Change proxy.config.net.poll_timeout to 10ms consistently Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/110bcd1b Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/110bcd1b Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/110bcd1b Branch: refs/heads/master Commit: 110bcd1b8d7905d1d20c7046bce0aced05cad32a Parents: a2fab00 Author: Leif Hedstrom <zw...@apache.org> Authored: Fri Jan 3 10:48:55 2014 -0700 Committer: Leif Hedstrom <zw...@apache.org> Committed: Fri Jan 3 10:48:55 2014 -0700 ---------------------------------------------------------------------- .../configuration/records.config.en.rst | 23 +++++++++++++------- mgmt/RecordsConfig.cc | 8 +------ proxy/Main.cc | 2 +- 3 files changed, 17 insertions(+), 16 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/trafficserver/blob/110bcd1b/doc/reference/configuration/records.config.en.rst ---------------------------------------------------------------------- diff --git a/doc/reference/configuration/records.config.en.rst b/doc/reference/configuration/records.config.en.rst index 4c46d04..cd81990 100644 --- a/doc/reference/configuration/records.config.en.rst +++ b/doc/reference/configuration/records.config.en.rst @@ -2229,22 +2229,29 @@ Sockets Same as the command line option ``--poll_timeout``, or ``-t``, which specifies the timeout used for the polling mechanism used. This timeout is - always in milliseconds (ms). On Linux, this is the timeout to - ``epoll_wait()``. The default value is ``10`` on all platforms except - Solaris, where it is ``30``. + always in milliseconds (ms). This is the timeout to ``epoll_wait()`` on + Linux platforms, and to ``kevent()`` on BSD type OSs. The default value is + ``10`` on all platforms. Changing this configuration can reduce CPU usage on an idle system, since periodic tasks gets processed at these intervals. On busy servers, this - overhead is diminished, since polled events triggers more - frequently. However, increasing the setting can also introduce additional - latency for certain operations, and timed events. It's recommended not to - touch this setting unless your CPU usage is unacceptable at idle - workload. Some alternatives to this could be:: + overhead is diminished, since polled events triggers morefrequently. + However, increasing the setting can also introduce additional latency for + certain operations, and timed events. It's recommended not to touch this + setting unless your CPU usage is unacceptable at idle workload. Some + alternatives to this could be:: Reduce the number of worker threads (net-threads) Reduce the number of disk (AIO) threads Make sure accept threads are enabled + The relevant configurations for this are:: + + CONFIG proxy.config.exec_thread.autoconfig INT 0 + CONFIG proxy.config.exec_thread.limit INT 2 + CONFIG proxy.config.accept_threads INT 1 + CONFIG proxy.config.cache.threads_per_disk INT 8 + Undocumented ============ http://git-wip-us.apache.org/repos/asf/trafficserver/blob/110bcd1b/mgmt/RecordsConfig.cc ---------------------------------------------------------------------- diff --git a/mgmt/RecordsConfig.cc b/mgmt/RecordsConfig.cc index 72a905f..22161cc 100644 --- a/mgmt/RecordsConfig.cc +++ b/mgmt/RecordsConfig.cc @@ -796,13 +796,7 @@ RecordElement RecordsConfig[] = { , {RECT_CONFIG, "proxy.config.net.sock_mss_in", RECD_INT, "0", RECU_NULL, RR_NULL, RECC_NULL, NULL, RECA_NULL} , - {RECT_CONFIG, "proxy.config.net.poll_timeout", RECD_INT, -#if defined(solaris) - "30", -#else - "10", -#endif - RECU_NULL, RR_NULL, RECC_NULL, NULL, RECA_NULL} + {RECT_CONFIG, "proxy.config.net.poll_timeout", RECD_INT, "10", RECU_NULL, RR_NULL, RECC_NULL, NULL, RECA_NULL} , //############################################################################## http://git-wip-us.apache.org/repos/asf/trafficserver/blob/110bcd1b/proxy/Main.cc ---------------------------------------------------------------------- diff --git a/proxy/Main.cc b/proxy/Main.cc index 1947621..d715319 100644 --- a/proxy/Main.cc +++ b/proxy/Main.cc @@ -1462,7 +1462,7 @@ main(int /* argc ATS_UNUSED */, char **argv) // This shouldn't happen, but lets make sure we run somewhat reasonable. if (net_config_poll_timeout < 0) { - net_config_poll_timeout = 30; // This is the solaris default value. + net_config_poll_timeout = 10; // Default value for all platform. } ink_event_system_init(makeModuleVersion(1, 0, PRIVATE_MODULE_HEADER));