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服务器上进行负载均衡配置方法,希望对有需要的同学有所帮助哦. 负载均衡 先来简单了解一下什么是负载均衡,单从字面上的意思来理解就可 ...
随机推荐
- size_t ssize_t loff_t 的区别
Ssize_t 与size_t 跟踪linux源码得到以下宏: #ifndef _SIZE_T #define _SIZE_T typedef __kernel_size_t size ...
- Time Limit Exceeded 求逆序对数。
/** 题目:Time Limit Exceeded 链接:https://oj.ejq.me/problem/28 题意:求逆序对数. 思路:树状数组求逆序对数.维护前面有多少个<=当前数的数 ...
- 在虚拟机VMware Workstation上安装win7系统
之前讲过虚拟机的安装过程,虚拟机安装完成之后,就需要在虚拟机上安装操作系统了,这次就讲讲怎么在虚拟机上安装操作系统. 工具/原料 VMware Workstation win7系统盘 iso格式 ...
- servlet部署到tomcat中
引用:http://blog.csdn.net/shuidao/article/details/1738059 配置,部署 servlet: 1. 在tomcat的安装目录下 找到webapps 文件 ...
- scaffolding —— 脚手架(转)
Scaffolding — 基架 基于数据库架构生成网页模板的过程.在 ASP .NET 中,动态数据使用基架来简化基于 Web 的 UI 的生成过程.用户可以通过这种 UI 来查看和更新数据库. ...
- codeblocks在进行多线程出现phread问题
undefined reference to 'pthread_create' 出现这个错误是因为编译默认不会链接进程库. 可以选择用gcc进行编译 加上-lpthread 比如:gcc exampl ...
- SQL Server 2008 收缩日志 清空删除大日志文件
SQL2008 的收缩日志 由于SQL2008对文件和日志管理进行了优化,所以以下语句在SQL2005中可以运行但在SQL2008中已经被取消: (SQL2005) BackupLog DNName ...
- Python3.6全栈开发实例[025]
25.文件a1.txt内容(升级题)name:apple price:10 amount:3 year:2012name:tesla price:100000 amount:1 year:2013通过 ...
- Linux中进程在前后台的切换
把进程放入后台执行 tar -zcf etc.tar.gz /etc &把进程放入后台暂停 在命令执行的过程中,按下ctrl+z 查看后台的命令 jobs[root@localhost tem ...
- A Simple Web Server
介绍 在过去20几年里,网络已经在各个方面改变了我们的生活,但是它的核心却几乎没有什么改变.多数的系统依然遵循着Tim Berners-Lee在上个世纪发布的规则.大多数的web服务器都在用同样的方式 ...