`
阅读更多

在nginx接收到请求之后, 需把请求分发到后端WEB服务集群.

在这里需要记录分发日志, 来分析后端每台WEB服务器处理的请求数目.

http {
log_format  main  
  ' $remote_user [$time_local]  $http_x_Forwarded_for $remote_addr  $request '
 '$http_x_forwarded_for '                     
 '$upstream_addr '                      
 'ups_resp_time: $upstream_response_time '                      
 'request_time: $request_time';

access_log  logs/access.log  main;

server{}
...
}

 在日志显示的信息为:

 - [31/May/2013:00:01:03 -0700]  - xxx.ip.addr.xxx  GET /portal/index.html HTTP/1.1 - 192.168.100.15:8188 ups_resp_time: 0.010 request_time: 0.011
 - [31/May/2013:00:01:03 -0700]  - xxx.ip.addr.xxx  GET /portal/index.html HTTP/1.1 - 192.168.100.16:8188 ups_resp_time: 0.006 request_time: 0.006
 - [31/May/2013:00:01:03 -0700]  - xxx.ip.addr.xxx  GET /portal/index.html HTTP/1.1 - 192.168.100.15:8188 ups_resp_time: 0.013 request_time: 0.013
 - [31/May/2013:00:01:03 -0700]  - xxx.ip.addr.xxx  GET /portal/index.html HTTP/1.1 - 192.168.100.17:8188 ups_resp_time: 0.003 request_time: 0.003
 - [31/May/2013:00:01:03 -0700]  - xxx.ip.addr.xxx  GET /portal/index.html HTTP/1.1 - 192.168.100.18:8188 ups_resp_time: 0.004 request_time: 0.004
 - [31/May/2013:00:01:03 -0700]  - xxx.ip.addr.xxx  GET /portal/index.html HTTP/1.1 - 192.168.100.15:8188 ups_resp_time: 0.012 request_time: 0.013
 - [31/May/2013:00:01:03 -0700]  - xxx.ip.addr.xxx  GET /portal/index.html HTTP/1.1 - 192.168.100.18:8188 ups_resp_time: 0.005 request_time: 0.005
 - [31/May/2013:00:01:03 -0700]  - xxx.ip.addr.xxx  GET /portal/index.html HTTP/1.1 - 192.168.100.16:8188 ups_resp_time: 0.011 request_time: 0.011
 - [31/May/2013:00:01:03 -0700]  - xxx.ip.addr.xxx  GET /portal/index.html HTTP/1.1 - 192.168.100.15:8188 ups_resp_time: 0.447 request_time: 0.759

 全部配置文件nginx.conf.

# greatwqs@163.com Install on 2012-08-11 linux
# user  devwqs;

# 2 intel(R) xeon(R) CPU
worker_processes  4;

worker_cpu_affinity 00000001 00000010 00000100 00001000;

# error_log  logs/error.log;
# error_log  logs/error.log  notice;
error_log   logs/error.log  error;

pid        logs/nginx.pid;

# allow openning file nums
worker_rlimit_nofile 25600;

events {
    # linux 2.6 upper version.
    use epoll;
    worker_connections  51200;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    # log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                   '$status $body_bytes_sent "$http_referer" '
    #                   '"$http_user_agent" "$http_x_forwarded_for"'
    #                   '"$upstream_addr"' '"$upstream_response_time"';
    log_format  main  ' $remote_user [$time_local]  $http_x_Forwarded_for $remote_addr  $request '
                      '$http_x_forwarded_for '
                      '$upstream_addr '
                      'ups_resp_time: $upstream_response_time '
                      'request_time: $request_time';

    access_log  logs/access.log  main;

    sendfile                     on;
    # tcp_nopush                 on;
                                 
    keepalive_requests           200;
    keepalive_timeout            20;
    gzip  on;                    
    client_body_buffer_size      128k;
    client_body_timeout          60s;
    client_max_body_size         10m;
    # proxy_buffer_size          8k;
    # proxy_busy_buffers_size    64k;
    proxy_temp_file_write_size   64k;

    # portal-cluster
    upstream portal-cluster {
        # http://192.168.100.15:8188/portal/
        server 192.168.100.15:8188 weight=5 max_fails=5 fail_timeout=30s;

        # http://192.168.100.16:8188/portal/
        server 192.168.100.16:8188 weight=5 max_fails=5 fail_timeout=30s;
        
        # http://192.168.100.17:8188/portal/
        server 192.168.100.17:8188 weight=5 max_fails=5 fail_timeout=30s;
        
        # http://192.168.100.18:8188/portal/
        server 192.168.100.18:8188 weight=5 max_fails=5 fail_timeout=30s;
    }

    # manage-cluster
    upstream manage-cluster {
        # http://192.168.100.25:8189/manage/
        server 192.168.100.25:8189 weight=4 max_fails=5 fail_timeout=30s;

        # http://192.168.100.26:8189/manage/
        server 192.168.100.26:8189 weight=6 max_fails=5 fail_timeout=30s;
    }

    # External Internet.
    server {
        listen       80;
        server_name  www.huaxixiang.com;
        access_log   logs/host.access.log  main;

        location /portal/ {
            # root   html;
            # index  index.html index.htm;
            # nginx http header send to tomcat app.
            # proxy_set_header Host  $host;
            # proxy_set_header X-Forwarded-For  $remote_addr;
            proxy_set_header Host $host;
            proxy_set_header X-Real-Ip $remote_addr;
            proxy_set_header X-Forwarded-For $remote_addr;

            proxy_pass http://portal-cluster;
        }

        # nginx status
        location /nginx_status {
            # copied from http://blog.kovyrin.net/2006/04/29/monitoring-nginx-with-rrdtool/
            stub_status  on;
            access_log   off;
            allow        192.168.100.100;
            #deny all;
        }

        location / {
            root   html;
            index  index.html index.htm;
        }
        error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

    # External Internet.
    server {
        listen       80;
        server_name  manage.huaxixiang.com;

        access_log  logs/host.access.log  main;

        location /manage/ {
            proxy_pass http://manage-cluster;
        }

        location / {
            root   html;
            index  index.html index.htm;
        }

        error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}

nginx status查看:


 

  • 大小: 17.5 KB
0
0
分享到:
评论

相关推荐

    doubi.zip_nginx 分发_nginx端口分发

    2. **端口分发**:在Nginx配置中,可以设置不同的监听端口,并根据某些规则(如URL路径、主机头或后缀等)将请求分发到不同的后端服务。例如,所有以特定后缀结尾的请求会被转发到特定端口。 3. **负载均衡**:...

    Nginx配置负载均衡、动静分离、请求日志打印、日志切割、压缩、删除.md

    **负载均衡**是Nginx的一项核心功能,它能帮助我们将客户端请求分发到不同的服务器上,从而提高系统的稳定性和可用性。 **1.1 配置示例** 要在Nginx中实现负载均衡,首先需要定义一个 `upstream` 块来指定一组后端...

    Nginx入门到实践 Nginx 中间件

    日志记录与访问控制 Nginx 可以自定义日志格式,记录请求信息,便于分析流量和排查问题。同时,通过 `allow` 和 `deny` 指令,可以实现基于 IP 地址或网络段的访问控制。 ### 10. 高可用与故障转移 通过 `...

    跟我学Nginx+Lua开发_nginxlua原理_nginx_

    5. 日志处理:通过Lua自定义日志格式,实现更精细化的日志记录和分析。 六、Nginx Lua性能优化 由于Lua脚本是在Nginx内部运行的,所以其性能直接影响到Nginx的整体性能。优化要点包括: - 减少Lua脚本的I/O操作,尽...

    nginx-1.13.0压缩包

    日志记录与分析** Nginx 默认生成访问日志,便于监控和分析服务器的运行情况。通过日志,可以了解请求量、响应时间、错误率等关键指标,为性能优化和故障排查提供数据支持。 **7. 身份验证与安全控制** Nginx 可以...

    Linux下安装与配置基于nginx的tomcat负载均衡和集群(通过cookie分发请求)

    在Web服务场景中,这通常意味着将HTTP请求分发到多台运行Tomcat应用服务器上。 Nginx是一个高性能的HTTP和反向代理服务器,常被用作负载均衡器。它的配置灵活,可以基于多种策略分配请求,包括轮询、权重、IP哈希等...

    Redis+nginx集群部署

    Nginx负责将用户请求分发到各个Tomcat实例,而Redis则用来解决跨服务器的Session共享问题。 **知识点:** 1. **Nginx反向代理**:Nginx是一个高性能的HTTP和反向代理服务器,它可以将用户的请求转发到后端的多个...

    nginx Web服务器代码

    4. **负载均衡**:通过配置,Nginx可以将请求分发到不同的后端服务器,实现负载均衡,提高服务的稳定性和响应速度。 5. **静态文件处理**:Nginx对于静态文件(如HTML、图片、CSS、JavaScript等)的处理非常高效,...

    nginx安装包.zip

    Nginx默认将访问日志和错误日志分别记录在`access.log`和`error.log`文件中。可以通过配置文件更改日志路径和级别,便于监控和分析服务器状态。 **8. 安全优化** 为了确保Nginx服务器的安全,应启用HTTPS支持,配置...

    nginx-1.15.11.tar

    12. **日志管理**:Nginx的日志记录功能强大,可以根据需求定制日志格式,方便进行性能分析和问题排查。 13. **错误页面定制**:Nginx允许自定义错误页面,提供更友好的用户体验。 总结,Nginx-1.15.11版本的下载...

    nginx-1.9.0 文档

    Nginx的日志记录功能强大且灵活,可以自定义日志格式,通过`access_log`和`error_log`指令控制日志输出。 **十、健康检查** 通过`proxy_next_upstream`和`proxy_set_header`等指令,Nginx可以对后端服务器进行健康...

    nginx-1.24.0

    3. **LICENSE**: Nginx遵循BSD-like许可证,这意味着它是一个自由软件,允许用户自由地使用、复制、修改和分发。`LICENSE`文件详细阐述了这些许可条款,确保用户遵守法律要求。 4. **README**: 这是Nginx的基本使用...

    nginx-release-1.21.4.zip

    例如,当有多个Web应用服务器时,Nginx可以根据预设的策略(如轮询、权重、IP哈希等)将请求分发到不同的服务器,提高系统的可用性和响应速度。 Nginx还支持静态文件服务,对于HTML、图片、CSS、JavaScript等静态...

    内网安装nginx(离线)

    - 对于内网部署的Nginx,定期检查日志文件,监控性能指标,确保服务稳定性。同时,定期更新Nginx以获取安全修复和新功能。 通过以上步骤,你可以在内网环境下成功地安装和配置Nginx,实现离线安装和集群部署。这种...

    2024年最新版nginx,windows版本

    - **负载均衡**:使用`upstream`块和负载均衡策略,Nginx可以将请求分发到多个后端服务器,提高系统可用性。 - **静态文件处理**:Nginx能高效地处理静态文件,如HTML、CSS、JavaScript、图片等,减轻后端服务器压力...

    nginx-1.21.5.tar.gz

    8. **日志记录**: Nginx的日志功能强大,可以记录请求详情,方便进行性能分析和问题排查。日志格式可自定义,支持与其他工具集成进行日志分析。 在安装Nginx 1.21.5时,首先需要解压`nginx-1.21.5.tar.gz`,然后...

    nginx-1.16.1

    其次,作为反向代理,Nginx 1.16.1 可能包含更精细的负载均衡策略,如轮询、最少连接数、IP哈希等,帮助企业实现更智能的服务分发,提高整体系统可用性和可靠性。此外,它还支持 SSL/TLS 加密,为网站提供安全的 ...

    nginx-1.21.6.zip和nginx-1.21.6.tar.gz

    - 负载均衡:通过轮询、权重、IP哈希等方式将请求分发到多个后端服务器,提高系统的可用性和响应速度。 - URL重写:通过配置rewrite规则,可以实现URL的美化和动态链接的静态化。 - SSL/TLS支持:提供HTTPS服务,...

    nginx-1.9.14.rar

    配置文件通常位于`conf/nginx.conf`,可以在此处调整服务器监听端口、虚拟主机设置、日志记录、缓存策略等。对于初学者,理解配置文件的结构和指令是关键,如`server`块、`location`块等。 3. **Nginx配置文件详解*...

Global site tag (gtag.js) - Google Analytics