千家信息网

nginx+中怎么实现集群负载均衡

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章将为大家详细讲解有关nginx+中怎么实现集群负载均衡,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。一,配置nginx安装nginx包a.安装
千家信息网最后更新 2026年11月02日nginx+中怎么实现集群负载均衡

这篇文章将为大家详细讲解有关nginx+中怎么实现集群负载均衡,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

一,配置nginx
安装nginx包

a.安装pcre

tar zxvf pcre-7.2.tar.gz

cd pcre

./configure --prefix = /pcre

Make;make install

b,安装nginx

tar zxvf nginx-0.6.32.tar.gz

cd nginx-0.6.32

./configure --prefix=/nginx -with-pcre=/pcre --with-http_rewrite_module

Make;make install

3, 修改配置文件

Vi /nginx/conf/nginx.conf

#用户组

user nobody nobody;

#cpu个数,可以按照实际服务器来计算

worker_processes 8;

worker_rlimit_nofile 51200;

events {

use epoll;

#连接数

worker_connections 8192 ;

}

http {

include mime.types;

default_type application/octet-stream;

server_names_hash_bucket_size 128;

# access_log off;

# access_log logs/access.log;

#缓存的时间,(可以根据不同文件设置不同时间)

# expires 2h;

tcp_nodelay on;

keepalive_timeout 30;

gzip on;

gzip_min_length 10;

gzip_buffers 4 8k;

gzip_http_version 1.1;

gzip_types text/plain application/x-javascript text/css text/html application/xml;

sendfile on;

tcp_nopush on;

reset_timedout_connection on;

client_max_body_size 30m;

#设定负载均衡列表

upstream backend

{

server 172.23.254.2:8080;

server 172.23.254.3:8080;

}

#设定虚拟主机

server {

listen 80;

server_name www.abc.com;

#对 / 所有做负载均衡(本机nginx采用完全转发,所有请求都转发到后端的tomcat集群)

location / {

root /web/www ;

index index.jsp index.htm index.html;

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_pass http://backend;

}

}

}

主要在配置proxy与upstream

Upstream具有负载均衡能力,可以自动判断下面的机器,并且自动踢出不能正常提供服务的机器。

4,启动程序

/nginx/sbin/nginx

5,编写启动脚本

Vi nginx.sh

#!/bin/sh

CWD=`pwd`


case $1 in
start)
/nginx/sbin/nginx;
;;
stop)
kill -2 `ps -ef|grep "/nginx/sbin/nginx"|grep -v "grep"|awk '{print $2}' `
;;
restart)
cd "$CMD"
$0 stop
$0 start
;;
*)
echo $"Usage: $0 {start|stop|restart}"
exit 1
esac
exit 0

二,配置tomcat

1, 下载tomcat5.59

tar zxvf tomcat5.59

2,修改配置文件

a,配置数据源

b,优化tomcat最大并发数

maxThreads="2048" minSpareThreads="100" maxSpareThreads="200"

enableLookups="false" redirectPort="8443" acceptCount="500"

connectionTimeout="20000" disableUploadTimeout="true" />

c,添加虚拟主机

(注,主转发的虚拟主机必须用localhost,否则nginx不能通过内网ip转发,而只有通过域名转发

d,测试

打开http://ip:8080

页面能访问则正常

2, 其他的tomcat服务器也用同样的配置

三,做tomcat集群

两台机器 172.23.254.2 172.23.254.3

做集群需要修改的文件配置有三个地方

1,修改conf/server.xml配置文件
a. 找到Engine标签,加入属性 jvmRoute="worker1"

b.找到Cluster标签,去掉注释,同时修改tcpListenAddress为本机ip 172.23.254.2 (注:这一段Cluster必须放在hosts里面)

2, 修改应用的web.xml

修改web应用里面WEB-INF目录下的web.xml文件,加入标签

直接加在之前就可以了

这个是加入tomcat的session复制的,做tomcat集群必须需要这一步,否则用户的session就无法正常使用。

3, 开启防火墙

这两个tomcat之间必须开启防火墙信任。

分别启动两个tomcat,查看每一个tomcat是否都启动了8080端口以及4001端口

再用netstat -an 查看链接情况

tcp 0 0 172.23.254.2:43320 172.23.254.3:4001 ESTABLISHED

tcp 0 0 172.23.254.2:46544 172.23.254.3:4001 TIME_WAIT

tcp 0 0 172.23.254.2:40118 172.23.254.3:4001 ESTABLISHED

tcp 0 0 172.23.254.2:4001 172.23.254.3:48804 ESTABLISHED

tcp 0 0 172.23.254.2:4001 172.23.254.3:34254 ESTABLISHED

如果两台机器的4001端口分别建立了连接,则说明集群配置成功,可以进行session复制。

关于nginx+中怎么实现集群负载均衡就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

配置 集群 文件 均衡 机器 主机 标签 用户 端口 虚拟主机 服务 不同 两个 内容 文章 时间 更多 服务器 知识 篇文章 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 精品咖啡豆 喔噻互联网科技有限公司 互联网科技公司排名 云之行互联网科技 美国互联网保险保险科技 关于新基建和互联网科技 奇酷互联网科技 奇酷互联网络科技 汇久创客互联网科技 奔汉互联网科技 顺玮阁互联网科技 西藏七维空间互联网科技有限公司 浙南科技城互联网大厦建设工程 互联网方面的科技前沿 皮皮虾互联网科技有限公司 互联网科技包装股 普陀区互联网教育科技管理办法 张家口科技产业互联网平台 保山浩联互联网科技有限公司 利用互联网等科技手段 互联网医疗科技 科技互联网创业计划书 新兴科技互联网创新大赛颁奖典礼 洛阳共同富裕互联网科技有限公司 上海创道互联网络科技有限公司 互联网科技年终奖 银川新华互联网科技学校是国营吗 河南商务圈互联网科技有限公司 互联网高科技绘画 武汉亿视互联网科技有限公司
0