14、使用Nginx+Tomcats搭建高可用负载均衡集群

来源:互联网 发布:农村知客一般用词 编辑:程序博客网 时间:2024/05/13 12:41

负载均衡的目的是为了解决单个节点压力过大,造成Web服务响应过慢,严重的情况下导致服务瘫痪,无法正常提供服务。本实例通过使用Nginx作为负载均衡器,Tomcats作为后台Web服务器,部署一个高可用的Web应用,应用架构图如下所示:


这里写图片描述

安装Tomcats并启动应用

Tomcats的安装和启动非常简单,读者自行百度,这里不做介绍。

Nginx配置

进入Nginx配置文件目录(本实例的Nginx目录在/usr/local/nginx/conf/),打开nginx.conf,写入如下内容

worker_processes  1;pid        logs/nginx.pid;events {    worker_connections  1024;}http {    include       mime.types;    default_type  application/octet-stream;    proxy_set_header        Host $host;    proxy_set_header        X-Real-IP $remote_addr;    proxy_set_header       X-Forwarded-For   $proxy_add_x_forwarded_for;    sendfile        on;    keepalive_timeout  65;    gzip  on;    upstream ronblog.com {     server 192.168.199.149:80 weight=1;     server 192.168.199.149:81 weight=2;         server 192.168.199.149:82 weight=3;    }    server {        listen       80;        server_name  ronblog;        location / {        proxy_pass http://ronblog.com;        proxy_redirect default;           }    location ~ .*\.(html|htm|gif|jpg|jpeg|bmp|png|ico|txt|css|js)$ {        proxy_pass http://ronblog.com;        add_header Last-Modified $date_gmt;            add_header Via $server_addr;    }        error_page   500 502 503 504  /50x.html;        location = /50x.html {            root   html;        }    }}

保存配置文件并退出,进入sbin目录(/usr/local/nginx/sbin)下使用如下命令启动nginx

./nginx

nginx启动完毕后使用ps命令查看是否启动成功

[root@localhost sbin]# ps -ef|grep nginxroot      3557     1  0 15:08 ?        00:00:00 nginx: master process ./nginxnobody    3558  3557  0 15:08 ?        00:00:00 nginx: worker processroot      3638  2921  0 15:37 pts/0    00:00:00 grep --color=auto nginx

Nginx启动成功之后,在浏览器中输入Nginx服务器的ip地址即可出现结果。


这里写图片描述

停止其中的一台或者两台Tomcats服务,应用依然可用。

注意:百度如何使用Nginx配置负载均衡服务器时,很多文章都没有加如下配置,这样会导致css、js、图片无法加载,出现加载静态文件时404错误,所以在nginx.conf文件中,需要加如下配置:

proxy_set_header        Host $host;proxy_set_header        X-Real-IP $remote_addr;proxy_set_header       X-Forwarded-For   $proxy_add_x_forwarded_for;
阅读全文
1 0
原创粉丝点击