Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
nginx+nginx, убрать блокировк у на диске, конфиг
- To: nginx-ru@xxxxxxxxx
- Subject: nginx+nginx, убрать блокировк у на диске, конфиг
- From: Андрей <deepmindster@xxxxxxxxx>
- Date: Thu, 05 Jun 2008 02:51:04 +0400
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from :user-agent:mime-version:to:subject:content-type :content-transfer-encoding; bh=4PoLHmamuADeKtk3yZoyVZd+/1bXYsMlrr5/Yv74ZZg=; b=TksolaIOOTcaLVJ0J8YRxFC6fvTJNc3rXYRxQDB5WoLaGihl0fiDX11mMSy3M9Pnts CP4yGRqYcWyg+f4PIUhdANTbld1BRUSDqHT8j6Eiffb6dSeSJHY5N9kB0B9rhK1mYTs6 uhIAeU1MY6tw1tD1JzruxAwedZOcFp6Dp1+SQ=
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:subject :content-type:content-transfer-encoding; b=SItuNcn0A55ItYB9NZZnOFVr/vSb03YErnVLxVa6p7EUHU68VPedjxHJO/gtwsws6I +Afteb+r93cmTruV0b9aDE6IdRuSuZ31wez9Lc075XIGqS1jk4tAYA1JI9uep61odc4f Cz71QYrROd0XxS1lT7L6xF0l0cbmz0iY5zZrw=
Доброго времени суток.
Собственно, хотелось убрать блокировку на диске. Для этого, как здесь и
предлагалось несколько раз, установил связку nginx+nginx. Второй nginx
отдаёт первому статику с диска, так как соединение по tcp-сокету, то, по
идее, первый nginx, читая обычный сокет, не будет блокироваться и будет
всегда готов принять соединение и выдать информацию из памяти(если она
там есть), даже если диск сильно загружен. Настройки примерно такие -
отключил сендфайл, proxy_buffering off, tcp_nopush on, tcp_nodelay off,
gzip off. Собственно вопрос - не вопрос, а скорее просьба: глянте
конфиг, кто может/желает, может чего путнее подскажете, у меня опыта нет
в этом никакого почти - наверняка где-то что-то можно улучшить. Кроме
того, не совсем ясно что делать с таймаутами и должно ли быть соединение
keepalive между фронтендом и бекэндом?
конфиг фронтенда
server {
listen xxx.xxx.xxx.xxx:80;
server_name example.com;
root /srv/www/vhosts/example.com;
index no-such-image;
access_log /var/log/nginx/example.com.access.log main;
client_max_body_size 16k;
client_body_buffer_size 16k;
location / {
rewrite ^/images/(\d+).*$ /index.php?page=image_$1 last;
deny all;
}
location = /index.php {
proxy_pass http://127.0.0.1:1028;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
internal;
}
}
конфигурация бэкенда:
user nginx nginx;
worker_rlimit_nofile 10240;
worker_processes 4;
error_log /var/log/nginx_127.0.0.1/error.log warn;
pid /var/run/nginx_127.0.0.1.pid;
events {
worker_connections 10240;
use epoll;
}
http {
include mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] $status '
'"$request" $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx_127.0.0.1/access.log main;
sendfile off;
tcp_nopush on;
keepalive_timeout 0;
tcp_nodelay off;
gzip off;
server {
listen 127.0.0.1:1028;
server_name example.com;
root /srv/www/vhosts/example.com;
access_log
/var/log/nginx_127.0.0.1/example.com.access.log main;
client_max_body_size 16k;
client_body_buffer_size 16k;
location / {
deny all;
}
location = /index.php {
fastcgi_pass 127.0.0.1:1026;
fastcgi_param SCRIPT_FILENAME
/srv/www/vhosts/example.com$fastcgi_script_name;
include fastcgi_params;
}
location /saves {
root /srv/www/vhosts/example.com;
internal;
expires 8h;
}
}
}
спасибо,
Андрей.
|