nginx + tomcat配置负载均衡
目标:Nginx做为HttpServer,连接多个tomcat应用实例,进行负载均衡。
注:本例程以一台机器为例子,即同一台机器上装一个nginx和2个Tomcat且安装了JDK1.7。
1、安装Nginx
安装Nginx教程
2、配置两个Tomcat
在本机上配置两个Tomcat,分别为tomcat7-8081、tomcat7-8082。
tomcat7-8081访问地址:http://localhost:8081,浏览显示内容:this is 8081 port
tomcat7-8082访问地址:http://localhost:8082,浏览显示内容:this is 8082 port
D:\div\tomcat7-8081\webapps\ROOT\index.jsp文件内容为:
<!DOCTYPE html> <html lang="en"> <head>this is 8081 port</head> </html>
D:\div\tomcat7-8082\webapps\ROOT\index.jsp文件内容为:
<!DOCTYPE html> <html lang="en"> <head>this is 8082 port</head> </html>
这样我们就成功的搭建了一个nginx服务,成功的配置了两个tomcat应用实例。
3、Nginx+Tomcat负载均衡配置
这里只需要修改Nginx的配置,让它通过tomcat来转发。
a、nginx.conf配置文件
worker_processes 1; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 10; include extra/upstream01.conf; }
b、extra/upstream01.conf文件,负载均衡配置信息
upstream mysite { server localhost:8081 weight=5; server localhost:8082 weight=5; } server { listen 80; server_name localhost; location / { proxy_pass http://mysite; } }
当有请求到localhost时,请求会被分发到对应的upstream设置的服务器列表上,每一次请求分发的服务器都是随机的。
接着在运行一次start nginx,当你不断刷新http://localhost的时候,浏览器上就会来回切换"this is 8081 port"和"this is 8082 port"。
这样说明负载均衡配置成功了!!!!!!