Mercurial > hg > nginx-vendor-current
comparison src/http/ngx_http_upstream_round_robin.c @ 632:5b73504dd4ba NGINX_1_1_0
nginx 1.1.0
*) Feature: cache loader run time decrease.
*) Feature: "loader_files", "loader_sleep", and "loader_threshold"
options of the "proxy/fastcgi/scgi/uwsgi_cache_path" directives.
*) Feature: loading time decrease of configuration with large number of
HTTPS sites.
*) Feature: now nginx supports ECDHE key exchange ciphers.
Thanks to Adrian Kotelba.
*) Feature: the "lingering_close" directive.
Thanks to Maxim Dounin.
*) Bugfix: in closing connection for pipelined requests.
Thanks to Maxim Dounin.
*) Bugfix: nginx did not disable gzipping if client sent "gzip;q=0" in
"Accept-Encoding" request header line.
*) Bugfix: in timeout in unbuffered proxied mode.
Thanks to Maxim Dounin.
*) Bugfix: memory leaks when a "proxy_pass" directive contains
variables and proxies to an HTTPS backend.
Thanks to Maxim Dounin.
*) Bugfix: in parameter validaiton of a "proxy_pass" directive with
variables.
Thanks to Lanshun Zhou.
*) Bugfix: SSL did not work on QNX.
Thanks to Maxim Dounin.
*) Bugfix: SSL modules could not be built by gcc 4.6 without
--with-debug option.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Mon, 01 Aug 2011 00:00:00 +0400 |
parents | 49a0eb7ce20c |
children | 23ef0645ea57 |
comparison
equal
deleted
inserted
replaced
631:9b978fa3cd33 | 632:5b73504dd4ba |
---|---|
11 | 11 |
12 static ngx_int_t ngx_http_upstream_cmp_servers(const void *one, | 12 static ngx_int_t ngx_http_upstream_cmp_servers(const void *one, |
13 const void *two); | 13 const void *two); |
14 static ngx_uint_t | 14 static ngx_uint_t |
15 ngx_http_upstream_get_peer(ngx_http_upstream_rr_peers_t *peers); | 15 ngx_http_upstream_get_peer(ngx_http_upstream_rr_peers_t *peers); |
16 | |
17 #if (NGX_HTTP_SSL) | |
18 | |
19 static ngx_int_t ngx_http_upstream_empty_set_session(ngx_peer_connection_t *pc, | |
20 void *data); | |
21 static void ngx_http_upstream_empty_save_session(ngx_peer_connection_t *pc, | |
22 void *data); | |
23 | |
24 #endif | |
16 | 25 |
17 | 26 |
18 ngx_int_t | 27 ngx_int_t |
19 ngx_http_upstream_init_round_robin(ngx_conf_t *cf, | 28 ngx_http_upstream_init_round_robin(ngx_conf_t *cf, |
20 ngx_http_upstream_srv_conf_t *us) | 29 ngx_http_upstream_srv_conf_t *us) |
341 | 350 |
342 r->upstream->peer.get = ngx_http_upstream_get_round_robin_peer; | 351 r->upstream->peer.get = ngx_http_upstream_get_round_robin_peer; |
343 r->upstream->peer.free = ngx_http_upstream_free_round_robin_peer; | 352 r->upstream->peer.free = ngx_http_upstream_free_round_robin_peer; |
344 r->upstream->peer.tries = rrp->peers->number; | 353 r->upstream->peer.tries = rrp->peers->number; |
345 #if (NGX_HTTP_SSL) | 354 #if (NGX_HTTP_SSL) |
346 r->upstream->peer.set_session = | 355 r->upstream->peer.set_session = ngx_http_upstream_empty_set_session; |
347 ngx_http_upstream_set_round_robin_peer_session; | 356 r->upstream->peer.save_session = ngx_http_upstream_empty_save_session; |
348 r->upstream->peer.save_session = | |
349 ngx_http_upstream_save_round_robin_peer_session; | |
350 #endif | 357 #endif |
351 | 358 |
352 return NGX_OK; | 359 return NGX_OK; |
353 } | 360 } |
354 | 361 |
755 | 762 |
756 ngx_ssl_free_session(old_ssl_session); | 763 ngx_ssl_free_session(old_ssl_session); |
757 } | 764 } |
758 } | 765 } |
759 | 766 |
767 | |
768 static ngx_int_t | |
769 ngx_http_upstream_empty_set_session(ngx_peer_connection_t *pc, void *data) | |
770 { | |
771 return NGX_OK; | |
772 } | |
773 | |
774 | |
775 static void | |
776 ngx_http_upstream_empty_save_session(ngx_peer_connection_t *pc, void *data) | |
777 { | |
778 return; | |
779 } | |
780 | |
760 #endif | 781 #endif |