nginx/src/http/modules
Roman Arutyunyan bf7d76b943 Upstream hash: speedup consistent hash init.
Repeatedly calling ngx_http_upstream_add_chash_point() to create
the points array in sorted order, is O(n^2) to the total weight.
This can cause nginx startup and reconfigure to be substantially
delayed.  For example, when total weight is 1000, startup takes
5s on a modern laptop.

Replace this with a linear insertion followed by QuickSort and
duplicates removal.  Startup for total weight of 1000 reduces to 40ms.

Based on a patch by Wai Keen Woon.
2015-03-02 18:41:29 +03:00
..
perl Perl: NULL-terminate argument list. 2014-06-19 04:16:36 -07:00
ngx_http_access_module.c Access: supplemented the obfuscated code with a comment. 2014-02-19 21:45:27 +04:00
ngx_http_addition_filter_module.c Entity tags: downgrade strong etags to weak ones as needed. 2014-06-26 02:21:01 +04:00
ngx_http_auth_basic_module.c Auth basic: "info" logging level on no user/password. 2013-10-31 04:02:21 +04:00
ngx_http_auth_request_module.c Auth request module import. 2013-08-21 19:19:47 +04:00
ngx_http_autoindex_module.c Autoindex: implemented XML output format. 2014-12-12 20:25:42 +03:00
ngx_http_browser_module.c Fixed directives inheritance. 2012-04-11 09:56:30 +00:00
ngx_http_charset_filter_module.c Charset filter: fixed charset setting on encoded replies. 2014-05-19 22:45:34 +04:00
ngx_http_chunked_filter_module.c Proxy: support for connection upgrade (101 Switching Protocols). 2013-02-18 13:50:52 +00:00
ngx_http_dav_module.c Dav: ngx_http_map_uri_to_path() errors were not checked. 2014-07-30 14:45:08 +08:00
ngx_http_degradation_module.c Fixed spelling in multiline C comments. 2012-04-03 07:37:31 +00:00
ngx_http_empty_gif_module.c Copyright updated. 2012-01-18 15:07:43 +00:00
ngx_http_fastcgi_module.c Upstream: added variables support to proxy_cache and friends. 2014-12-22 12:59:09 +03:00
ngx_http_flv_module.c Entity tags: set for static respones. 2012-07-09 00:13:06 +00:00
ngx_http_geo_module.c Style: add whitespace between control statement and parentheses. 2014-07-08 03:03:13 -07:00
ngx_http_geoip_module.c GeoIP: not all variable fields were initialized. 2014-07-25 14:43:29 -07:00
ngx_http_gunzip_filter_module.c Gzip, gunzip: flush busy buffers if any. 2014-10-15 22:57:23 +04:00
ngx_http_gzip_filter_module.c Gzip, gunzip: flush busy buffers if any. 2014-10-15 22:57:23 +04:00
ngx_http_gzip_static_module.c Charset filter: fixed charset setting on encoded replies. 2014-05-19 22:45:34 +04:00
ngx_http_headers_filter_module.c Headers filter: variables support in expires (ticket #113). 2014-12-11 23:42:11 +03:00
ngx_http_image_filter_module.c Image filter: downgrade strong etags to weak ones as needed. 2014-08-18 12:03:41 +04:00
ngx_http_index_module.c Fixed language in a comment preceding ngx_http_index_handler(). 2013-03-21 16:05:35 +00:00
ngx_http_limit_conn_module.c Limit conn: aligned field names in structures. 2014-09-24 21:55:19 +04:00
ngx_http_limit_req_module.c Limit req: reduced number of parameters in the lookup function. 2014-09-24 21:55:19 +04:00
ngx_http_log_module.c Access log: restricted "log_format" to "http" level. 2014-12-01 14:51:36 +03:00
ngx_http_map_module.c Handling of ngx_int_t != intptr_t case. 2013-09-04 21:16:59 +04:00
ngx_http_memcached_module.c Upstream: limited next_upstream time and tries (ticket #544). 2014-09-12 18:50:47 +04:00
ngx_http_mp4_module.c Mp4: use trak->smhd_size in ngx_http_mp4_read_smhd_atom(). 2014-08-19 14:13:39 +04:00
ngx_http_not_modified_filter_module.c Entity tags: explicit flag to skip not modified filter. 2014-06-26 02:27:11 +04:00
ngx_http_proxy_module.c Upstream: added variables support to proxy_cache and friends. 2014-12-22 12:59:09 +03:00
ngx_http_random_index_module.c Fixed spelling in single-line comments. 2012-02-28 11:31:05 +00:00
ngx_http_range_filter_module.c Range filter: single_range flag in request. 2014-03-21 19:33:21 +04:00
ngx_http_realip_module.c Added server-side support for PROXY protocol v1 (ticket #355). 2014-03-17 17:41:24 +04:00
ngx_http_referer_module.c Referer: fixed hostname buffer overflow check. 2013-08-29 22:35:54 +04:00
ngx_http_rewrite_module.c Variables: updated list of prefixes in ngx_http_rewrite_set(). 2014-08-27 21:38:08 +04:00
ngx_http_scgi_module.c Upstream: added variables support to proxy_cache and friends. 2014-12-22 12:59:09 +03:00
ngx_http_secure_link_module.c Secure_link: fixed configuration inheritance. 2013-01-28 14:42:07 +00:00
ngx_http_split_clients_module.c Split clients: check length when parsing configuration. 2013-03-21 16:06:53 +00:00
ngx_http_ssi_filter_module.c Entity tags: downgrade strong etags to weak ones as needed. 2014-06-26 02:21:01 +04:00
ngx_http_ssi_filter_module.h Copyright updated. 2012-01-18 15:07:43 +00:00
ngx_http_ssl_module.c SSL: the "ssl_password_file" directive. 2014-06-16 19:43:25 +04:00
ngx_http_ssl_module.h SSL: the "ssl_password_file" directive. 2014-06-16 19:43:25 +04:00
ngx_http_static_module.c Entity tags: set for static respones. 2012-07-09 00:13:06 +00:00
ngx_http_stub_status_module.c Stub status: corrected the "stub_status" directive. 2014-08-26 17:35:23 +04:00
ngx_http_sub_filter_module.c Sub filter: fixed matching for a single character. 2014-08-25 16:08:55 +04:00
ngx_http_upstream_hash_module.c Upstream hash: speedup consistent hash init. 2015-03-02 18:41:29 +03:00
ngx_http_upstream_ip_hash_module.c Upstream: fix tries check in ip_hash. 2014-05-23 13:47:05 +04:00
ngx_http_upstream_keepalive_module.c Upstream keepalive: reset c->sent on cached connections. 2014-09-29 22:27:45 +04:00
ngx_http_upstream_least_conn_module.c Upstream: included backup peers into peer.tries. 2014-09-12 18:50:46 +04:00
ngx_http_userid_filter_module.c Fixed spelling in single-line comments. 2012-02-28 11:31:05 +00:00
ngx_http_uwsgi_module.c Upstream: added variables support to proxy_cache and friends. 2014-12-22 12:59:09 +03:00
ngx_http_xslt_filter_module.c Entity tags: downgrade strong etags to weak ones as needed. 2014-06-26 02:21:01 +04:00