首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 互联网 >

Nginx+Tomcat负载均衡、响动分离

2012-12-28 
Nginx+Tomcat负载均衡、动静分离??? 一、负载均衡+动静分离??? 修改nginx/conf/nginx.conf,修改完后如下:#us

Nginx+Tomcat负载均衡、动静分离

??? 一、负载均衡+动静分离

??? 修改nginx/conf/nginx.conf,修改完后如下:

#user  nobody;worker_processes  1;#error_log  logs/error.log;#error_log  logs/error.log  notice;error_log  logs/error.log  info;pid        logs/nginx.pid;events {    worker_connections  1024;}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"';    #access_log  logs/access.log  main;          #设定请求缓冲    server_names_hash_bucket_size 128;    client_header_buffer_size 32k;    large_client_header_buffers 4 32k;    client_max_body_size 300m;    sendfile on;    tcp_nopush     on;    keepalive_timeout 60;    tcp_nodelay on;    server_tokens off;    client_body_buffer_size 512k;    proxy_connect_timeout   5;    proxy_send_timeout      60;    proxy_read_timeout      5;    proxy_buffer_size       16k;    proxy_buffers           4 64k;    proxy_busy_buffers_size 128k;    proxy_temp_file_write_size 128k;     client_header_timeout  3m;    client_body_timeout    3m;    send_timeout           3m;      gzip on;#开启gzip,节省带宽    gzip_min_length  1100;    gzip_buffers     4 8k;    gzip_types       text/plain text/css application/x-javascript image/bmp application/javascript;           output_buffers   1 32k;    postpone_output  1460;        limit_rate_after 3m;#限速模块,前3M下载时不限速    limit_rate 512k; #限速模块     server {        listen       80;        server_name  localhost;        #charset koi8-r;        access_log  logs/host.access.log;                        #自动补全"/"        if (-d $request_filename){         rewrite ^/(.*)([^/])$ http://$host/$1$2/ last;        }                        ###################动静分离配置#######################                ###################动态访问转向tomcat处理#######################        #location ~ \.(jsp|page|do)?$ {        #   proxy_set_header  Host $host;        #   proxy_set_header  X-Real-IP  $remote_addr;        #   proxy_pass http://mcul;#mcul与负载均衡upstream配置名称mcul一致         #}                ###################设定访问静态文件直接读取不经过tomcat#########        #location ~ .*\.(htm|html|gif|jpg|jpeg|png|bmp|swf|ioc|rar|zip|txt|flv|mid|doc|ppt|pdf|xls|mp3|wma)$  {         #   expires      30d;             #}              #location ~ .*\.(js|css)?$ {        #   expires      1h;        #}                   ####################所有请求均有Tomcat处理############        location / {            root   html;            index  index.html index.htm;            proxy_pass  http://mcul;  #mcul与负载均衡upstream配置名称mcul一致         }                ###################动静分离配置#######################        ##################404错误页#################        error_page  404              /404.html;        location = /40x.html {              root   html;          }        ##################404错误页#################        # redirect server error pages to the static page /50x.html        #                ##################50x错误页#################        error_page   500 502 503 504  /50x.html;        location = /50x.html {            root   html;        }        ##################50x错误页#################        # proxy the PHP scripts to Apache listening on 127.0.0.1:80        #        #location ~ \.php$ {        #    proxy_pass   http://127.0.0.1;        #}        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000        #        #location ~ \.php$ {        #    root           html;        #    fastcgi_pass   127.0.0.1:9000;        #    fastcgi_index  index.php;        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;        #    include        fastcgi_params;        #}        # deny access to .htaccess files, if Apache's document root        # concurs with nginx's one        #        #location ~ /\.ht {        #    deny  all;        #}    }    # another virtual host using mix of IP-, name-, and port-based configuration    #    #server {    #    listen       8000;    #    listen       somename:8080;    #    server_name  somename  alias  another.alias;    #    location / {    #        root   html;    #        index  index.html index.htm;    #    }    #}    ############负载均衡配置###########    upstream mcul {          server 127.0.0.1:8080 weight=1;          server 127.0.0.1:9080 weight=2;      }      ############负载均衡配置###########    # HTTPS server    #    #server {    #    listen       443;    #    server_name  localhost;    #    ssl                  on;    #    ssl_certificate      cert.pem;    #    ssl_certificate_key  cert.key;    #    ssl_session_timeout  5m;    #    ssl_protocols  SSLv2 SSLv3 TLSv1;    #    ssl_ciphers  HIGH:!aNULL:!MD5;    #    ssl_prefer_server_ciphers   on;    #    location / {    #        root   html;    #        index  index.html index.htm;    #    }    #}}
?

??? 二、Session复制

??? 1.修改Tomcat/conf/server.xml, 在<Engine name=<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster" channelSendOptions="6"> <Manager className="org.apache.catalina.ha.session.BackupManager" expireSessionsOnShutdown="false" notifyListenersOnReplication="true" mapSendOptions="6"/> <!-- <Manager className="org.apache.catalina.ha.session.DeltaManager" expireSessionsOnShutdown="false" notifyListenersOnReplication="true"/> --> <Channel className="org.apache.catalina.tribes.group.GroupChannel"> <Membership className="org.apache.catalina.tribes.membership.McastService" address="228.0.0.4" port="45564" frequency="500" dropTime="3000"/> <Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver" address="auto" port="5000" selectorTimeout="100" maxThreads="6"/> <Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter"> <Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/> </Sender> <Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/> <Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/> <Interceptor className="org.apache.catalina.tribes.group.interceptors.ThroughputInterceptor"/> </Channel> <Valve className="org.apache.catalina.ha.tcp.ReplicationValve" filter=".*\.gif|.*\.js|.*\.jpeg|.*\.jpg|.*\.png|.*\.htm|.*\.html|.*\.css|.*\.txt"/> <Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer" tempDir="/tmp/war-temp/" deployDir="/tmp/war-deploy/" watchDir="/tmp/war-listen/" watchEnabled="false"/> <ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/> </Cluster>

?

?

?

?

?

热点排行