Keep Alive piles up
meto
nginx-forum at nginx.us
Sat Jun 27 15:34:06 MSD 2009
(gdb) p *u
$1 = {read_event_handler = 0, write_event_handler = 0, peer = {connection = 0x0, sockaddr = 0x0, socklen = 0, name = 0x0, tries = 0, get = 0, free = 0,
data = 0x0, set_session = 0, save_session = 0, rcvbuf = 0, log = 0x8a23a0, cached = 0, log_error = 1}, pipe = 0x6f7098, request_bufs = 0x76a380,
output = {buf = 0x0, in = 0x0, free = 0x0, busy = 0x0, sendfile = 0, directio = 0, unaligned = 0, need_in_memory = 0, need_in_temp = 0, pool = 0x6f61d0,
allocated = 0, bufs = {num = 1, size = 8192}, tag = 0x6c5220, output_filter = 0x40c815 , filter_ctx = 0x769e18}, writer = {out = 0x0,
last = 0x0, connection = 0x0, pool = 0x6f61d0, limit = 0}, conf = 0x755c10, headers_in = {headers = {last = 0x0, part = {elts = 0x0, nelts = 0,
next = 0x0}, size = 0, nalloc = 0, pool = 0x0}, status_n = 0, status_line = {len = 0, data = 0x0}, status = 0x0, date = 0x0, server = 0x0,
connection = 0x0, expires = 0x0, etag = 0x0, x_accel_expires = 0x0, x_accel_redirect = 0x0, x_accel_limit_rate = 0x0, content_type = 0x0,
content_length = 0x0, last_modified = 0x0, location = 0x0, accept_ranges = 0x0, www_authenticate = 0x0, content_encoding = 0x0, content_length_n = 0,
cache_control = {elts = 0x0, nelts = 0, size = 0, nalloc = 0, pool = 0x0}}, resolved = 0x0, buffer = {pos = 0x0, last = 0x0, file_pos = 0,
file_last = 0, start = 0x0, end = 0x0, tag = 0x0, file = 0x0, shadow = 0x0, temporary = 0, memory = 0, mmap = 0, recycled = 0, in_file = 0, flush = 0,
sync = 0, last_buf = 0, last_in_chain = 0, last_shadow = 0, temp_file = 0, num = 0}, length = 0, out_bufs = 0x0, busy_bufs = 0x0, free_bufs = 0x0,
input_filter_init = 0, input_filter = 0, input_filter_ctx = 0x0, create_key = 0x493b77 ,
create_request = 0x493bff , reinit_request = 0x494afa ,
process_header = 0x494b55 , abort_request = 0x496728 ,
finalize_request = 0x496774 , rewrite_redirect = 0, timeout = 0, state = 0x0, method = {len = 0, data = 0x0},
schema = {len = 10, data = 0x4a9946 "fastcgi://"}, uri = {len = 0, data = 0x0}, cleanup = 0x76a3f0, store = 0, cacheable = 0, accel = 0, ssl = 0,
cache_status = 0, buffering = 1, request_sent = 0, header_sent = 0}
(gdb) p *(u->conf)
$2 = {upstream = 0x0, connect_timeout = 60000, send_timeout = 60000, read_timeout = 60000, timeout = 0, send_lowat = 0, buffer_size = 4096,
busy_buffers_size = 8192, max_temp_file_size = 1073741824, temp_file_write_size = 8192, busy_buffers_size_conf = 18446744073709551615,
max_temp_file_size_conf = 18446744073709551615, temp_file_write_size_conf = 18446744073709551615, bufs = {num = 8, size = 4096}, ignore_headers = 1,
next_upstream = 7, store_access = 384, buffering = 1, pass_request_headers = 1, pass_request_body = 1, ignore_client_abort = 0, intercept_errors = 1,
cyclic_temp_file = 0, temp_path = 0x8a7608, hide_headers_hash = {buckets = 0x8d2450, size = 15}, hide_headers = 0xffffffffffffffff,
pass_headers = 0xffffffffffffffff, cache = 0x0, cache_min_uses = 1, cache_use_stale = 2147483649, cache_methods = 6, cache_valid = 0x0,
store_lengths = 0x0, store_values = 0x0, store = 0, intercept_404 = 0, change_buffering = 0, ssl = 0x0, ssl_session_reuse = 0}
My config:
user www-data www-data;
worker_processes 4;
worker_rlimit_core 100m;
working_directory /var/lib/nginx/core;
worker_cpu_affinity 0001 0010 0100 1000;
error_log /var/log/nginx/error.log;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
#keepalive_timeout 300;
#anti-slowloris
client_body_timeout 10;
client_header_timeout 10;
keepalive_timeout 10;
keepalive_requests 250;
send_timeout 10;
limit_zone limit_per_ip $binary_remote_addr 1m;
#end slowloris
#cache for performance?
open_file_cache max=1000 inactive=20s;
open_file_cache_valid 30s;
open_file_cache_min_uses 2;
open_file_cache_errors on;
#end cache
# limit queries
#limit_req_zone $binary_remote_addr zone=one:10m rate=5r/s;
#limit_req zone=one burst=20;
#if ( $request_filename ~* ^.+\.(jpg|jpeg|gif|png|ico|css|js)$ ) {
#expires max;
#}
server_names_hash_bucket_size 33;
log_format main '$remote_addr - $remote_user [$time_local] $status '
'"$request" $body_bytes_sent "$http_referer" '
'"$http_user_agent" "http_x_forwarded_for"';
log_not_found off;
open_log_file_cache max=1000 inactive=20s min_uses=2 valid=1m;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
client_max_body_size 100M;
#gzip
gzip on;
gzip_min_length 1000;
gzip_proxied any;
gzip_vary on;
gzip_buffers 16 8k;
gzip_types text/plain application/xmltext/html text/xml text/css application/x-javascript application/xhtml+xml;
#upstream_fair_shm_size 128k;
upstream php {
#ip_hash;
#fair weight_mode=idle no_rr;
server 127.0.0.1:9000 max_fails=0; # link to HAproxy
#server 127.0.0.1:9001 weight=40 max_fails=0;# fail_timeout=1s;
#server s1.xgame.pl:9001 weight=20 max_fails=10 fail_timeout=1s;
#server s4.xgame.pl:9001 weight=10 max_fails=10 fail_timeout=1s;
}
upstream php2 {
#ip_hash;
server 127.0.0.1:9001 weight=20 max_fails=4 fail_timeout=20s;
#server s4.xgame.pl:9001 weight=20 max_fails=4 fail_timeout=20s;
}
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
}
Posted at Nginx Forum: http://forum.nginx.org/read.php?2,3374,3477#msg-3477
More information about the nginx
mailing list