Nginx负载均衡案例
nginx负载均衡配置,windows版本和linux版本的nginx除了启动方式其他基本无差异。
1.Niginx安装
参考:https://www.cnblogs.com/zwcry/p/9454647.html
2.nginx.conf配置
简单配置,满足测试与学习,其他属性详解可以问度娘。
配置了两个上游服务和两个监听服务
访问 www.dingjie.com 会分发到上游服务 app1_server
访问 www.dingjie.com 会分发到上游服务 app2_server
#nginx进程,一般设置为和cpu线程数一样
worker_processes 1; events {
#单个负载应用(tomcat)进程的最大并发链接数
worker_connections 1024;
} http { #连接超时时间,单位是秒
keepalive_timeout 65; #防止DDOS攻击,每秒限制1个连接访问
#limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;
#limit_conn_zone $binary_remote_addr zone=addr:10m; #weight 权重 max_fails 失败次数 fail_timeout 失败超时
#30秒内连接失败两次将认为该服务不可用 #配置上游服务器1(就是负载均衡需要分发的服务器)
upstream app1_server {
#tomcat1
server 192.168.159.129:8081 weight=1 max_fails=2 fail_timeout=30s;
#tomcat2
server 192.168.159.129:8082 weight=1 max_fails=2 fail_timeout=30s;
} #配置上游服务器2(就是负载均衡需要分发的服务器)
upstream app2_server {
#tomcat1
server 192.168.159.130:8081 weight=1 max_fails=2 fail_timeout=30s;
#tomcat2
server 192.168.159.130:8082 weight=1 max_fails=2 fail_timeout=30s;
} #配置负载均衡服务器
server {
#监听端口
listen 80; #监听地址(ip/域名)
server_name www.dingjie.com; #/拦截所有
location / {
proxy_pass http://app1_server;
proxy_connect_timeout 1;#连接应用(tomcat)超时
proxy_read_timeout 180;
proxy_send_timeout 180;
index index.html index.htm;
}
} #配置负载均衡服务器
server {
#监听端口
listen 80; #监听地址(ip/域名)
server_name www.dingjie2.com; #/拦截所有
location / {
proxy_pass http://app2_server;
proxy_connect_timeout 1;#连接应用(tomcat)超时
proxy_read_timeout 180;
proxy_send_timeout 180;
index index.html index.htm;
}
} # HTTPS server
#
#server {
# listen ssl;
# server_name localhost; # ssl_certificate cert.pem;
# ssl_certificate_key cert.key; # ssl_session_cache shared:SSL:1m;
# ssl_session_timeout 5m; # ssl_ciphers HIGH:!aNULL:!MD5;
# ssl_prefer_server_ciphers on; # location / {
# root html;
# index index.html index.htm;
# }
#} }
3.启动nigix.conf配置里的所有上游服务
如图,部署在tomcat上的java应用程序已经启动
注:每个java应用程序的访问地址对应niginx.conf里的upstream server的配置地址


4.修改本地hosts配置
windows系统下访问负载均衡地址:www.dingjie.com和www.dingjie2.com
www.dingjie.com和www.dingjie2.com 域名是假的,需要修改hosts(C:\Windows\System32\drivers\etc\hosts)文件。
在hosts最底部加入以下两行。
192.168.159.129 www.dingjie.com
192.168.159.129 www.dingjie2.com
注:(192.168.159.129是nginx所在服务器的ip地址);
5.访问测试
java应用服务已启动、nginx已启动、hosts文件已修改
打开浏览器访问www.dingjie.com和www.dingjie2.com


Nginx负载均衡案例的更多相关文章
- nginx负载均衡(5种方式)、rewrite重写规则及多server反代配置梳理
Nginx除了可以用作web服务器外,他还可以用来做高性能的反向代理服务器,它能提供稳定高效的负载均衡解决方案.nginx可以用轮询.IP哈希.URL哈希等方式调度后端服务器,同时也能提供健康检查功能 ...
- (转)nginx负载均衡(5种方式)、rewrite重写规则及多server反代配置梳理
Nginx除了可以用作web服务器外,他还可以用来做高性能的反向代理服务器,它能提供稳定高效的负载均衡解决方案.nginx可以用轮询.IP哈希.URL哈希等方式调度后端服务器,同时也能提供健康检查功能 ...
- nginx负载均衡配合keepalived服务案例实战
本实验用4台 centos6 虚拟机,2台做负载均衡,2台做web服务器,都先装上nginx lb01:192.168.0.235 --主负载均衡器 lb02:192.168.0.236 --备负 ...
- 解析nginx负载均衡
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://baidutech.blog.51cto.com/4114344/1033718 ...
- Nginx 负载均衡原理简介与负载均衡配置详解
Nginx负载均衡原理简介与负载均衡配置详解 by:授客 QQ:1033553122 测试环境 nginx-1.10.0 负载均衡原理 客户端向反向代理发送请求,接着反向代理根据某种负载机制 ...
- [转]Nginx负载均衡原理初解
什么是负载均衡 我们知道单台服务器的性能是有上限的,当流量很大时,就需要使用多台服务器来共同提供服务,这就是所谓的集群. 负载均衡服务器,就是用来把经过它的流量,按照某种方法,分配到集群中的各台服务器 ...
- nginx负载均衡之入门配置
先来简单了解一下什么是负载均衡,单从字面上的意思来理解就可以解释N台服务器平均分担负载,不会因为某台服务器负载高宕机而某台服务器闲置的情况.那么负载均衡的前提就是要有多台服务器才能实现,也就是两台以上 ...
- 解析 Nginx 负载均衡策略
转载:https://www.cnblogs.com/wpjamer/articles/6443332.html 1 前言 随着网站负载的不断增加,负载均衡(load balance)已不是陌生话题. ...
- nginx负载均衡详情
负载均衡是我们大流量网站要做的一个东西,下面我来给大家介绍在Nginx服务器上进行负载均衡配置方法,希望对有需要的同学有所帮助哦. 负载均衡 先来简单了解一下什么是负载均衡,单从字面上的意思来理解就可 ...
随机推荐
- java 通过Apache poi导出excel代码demo实例
package com.zuidaima.excel.util; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutput ...
- 集合映射中的映射包(使用xml文件)
如果持久类有List对象,我们可以通过列表或者bag元素在映射文件中映射. 这个包(bag)就像List一样,但它不需要索引元素. 在这里,我们使用论坛的场景: 论坛中一个问题有多个答案. 我们来看看 ...
- iOS View生成--->清晰的图片
核心代码 view生成图片方法 UIGraphicsBeginImageContext(view.bounds.size); [view.layer renderInContext:UIGraphic ...
- java打开后台程序
try{ String cmds="java -version"; Process p = Runtime.getRuntime().exec(cmds); int exitVal ...
- 7、easyui 表单
这是最后一个小节了,后面将会使用一个小项目来进一步实用讲解: 在之前的什么相关只是点都以及讲过了或者说涉及到过,如datagrid表格,树形菜单,布局面板panel,页签,拖放功能,只是在表格的属性细 ...
- cocos2d-x:Layer::setPosition
如果Node的实际类型是Layer或者其派生类, setPosition是不是有猫腻? std::string menuImage = "menu.png"; auto menuI ...
- Android ADB 命令链接模拟器出现 daemon not running 解决方法
用adb命令链接远程模拟器 有时候会遇到如下问题: C:Documents and SettingsAdministrator>adb connect 192.168.0.183 * daemo ...
- [转]Linux Socket编程 Socket抓取网页源码
“一切皆Socket!” 话虽些许夸张,但是事实也是,现在的网络编程几乎都是用的socket. ——有感于实际编程和开源项目研究. 我们深谙信息交流的价值,那网络中进程之间如何通信,如我们每天打开浏览 ...
- 【BZOJ2005】[Noi2010]能量采集 欧拉函数
[BZOJ2005][Noi2010]能量采集 Description 栋栋有一块长方形的地,他在地上种了一种能量植物,这种植物可以采集太阳光的能量.在这些植物采集能量后,栋栋再使用一个能量汇集机器把 ...
- JavaWeb 之文件上传
1. 文件上传的要求 1.1 上传对表单的限制 method="post"; enctype="multipart/form-data"; 表单中需要添加文件表 ...