Mercurial > hg > nginx
view src/http/ngx_http_spdy_module.h @ 6059:c81d79a7befd
SPDY: always push pending data.
This helps to avoid suboptimal behavior when a client waits for a control
frame or more data to increase window size, but the frames have been delayed
in the socket buffer.
The delays can be caused by bad interaction between Nagle's algorithm on
nginx side and delayed ACK on the client side or by TCP_CORK/TCP_NOPUSH
if SPDY was working without SSL and sendfile() was used.
The pushing code is now very similar to ngx_http_set_keepalive().
author | Valentin Bartenev <vbart@nginx.com> |
---|---|
date | Mon, 23 Mar 2015 21:04:13 +0300 |
parents | e5fb14e85040 |
children |
line wrap: on
line source
/* * Copyright (C) Nginx, Inc. * Copyright (C) Valentin V. Bartenev */ #ifndef _NGX_HTTP_SPDY_MODULE_H_INCLUDED_ #define _NGX_HTTP_SPDY_MODULE_H_INCLUDED_ #include <ngx_config.h> #include <ngx_core.h> #include <ngx_http.h> typedef struct { size_t recv_buffer_size; u_char *recv_buffer; } ngx_http_spdy_main_conf_t; typedef struct { size_t pool_size; ngx_uint_t concurrent_streams; ngx_uint_t streams_index_mask; ngx_msec_t recv_timeout; ngx_msec_t keepalive_timeout; ngx_int_t headers_comp; } ngx_http_spdy_srv_conf_t; typedef struct { size_t chunk_size; } ngx_http_spdy_loc_conf_t; extern ngx_module_t ngx_http_spdy_module; #endif /* _NGX_HTTP_SPDY_MODULE_H_INCLUDED_ */