diff options
author | Ivan Zhakov <ivan@apache.org> | 2017-08-17 15:56:48 +0000 |
---|---|---|
committer | Ivan Zhakov <ivan@apache.org> | 2017-08-17 15:56:48 +0000 |
commit | 3c5e1eebb67413173df4c29b5bd539e231cb9af2 (patch) | |
tree | 119f8d621262a9b7feb7ebc390412c72bdffc6d1 /CHANGES | |
parent | dc89f9ac8bc7ce3f1adc2de042725b4e800f2ece (diff) | |
download | apr-3c5e1eebb67413173df4c29b5bd539e231cb9af2.tar.gz |
apr_socket_listen(): Allow larger backlog queue lengths on Windows 8+.
Starting with Windows 8, the socket listen() function accepts a special
SOMAXCONN_HINT(N) argument that allows making the backlog queue
length larger than the otherwise predefined limit of around 200:
https://msdn.microsoft.com/en-us/library/windows/desktop/ms739168
https://blogs.msdn.microsoft.com/winsdk/2015/06/01/winsocks-listen-backlog-offers-more-flexibility-in-windows-8/
Having a larger listen backlog can be used for certain high performance
applications that need to handle lots of incoming connections. One
example would be the httpd server with it's "ListenBacklog" directive
where setting it to a larger value currently allows serving more concurrent
connections on Windows with mpm_winnt.
* include/arch/win32/apr_arch_misc.h
(enum apr_oslevel_e): Add APR_WIN_8.
* misc/win32/misc.c
(apr_get_oslevel): Determine whether we are running on Windows 7 or
on Windows 8+.
* network_io/win32/sockets.c
(SOMAXCONN_HINT): Define this macro in case we are building against
an older version of Windows SDK.
(apr_socket_listen): Use SOMAXCONN_HINT() for the backlog queue length
if it's supported by the Windows version we are running on.
Patch by: Evgeny Kotkov <evgeny.kotkov {at} visualsvn.com>
git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1805309 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'CHANGES')
-rw-r--r-- | CHANGES | 3 |
1 files changed, 3 insertions, 0 deletions
@@ -129,6 +129,9 @@ Changes for APR 2.0.0 *) Merge APR-util into APR. [various] + *) apr_socket_listen: Allow larger listen backlog values on Windows 8+. + [Evgeny Kotkov <evgeny.kotkov visualsvn.com>] + Changes for APR and APR-util 1.6.x and later: *) http://svn.apache.org/viewvc/apr/apr/branches/1.6.x/CHANGES?view=markup |