Nginx代理和负载均衡实验
一、构建两个tomcat容器并启动
[root@localhost bin]# ps -ef|grep tomcat
root : pts/ :: /usr/bin/java -Djava.util.logging.config.file=/usr/local/tomcat-/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize= -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK= -Dignore.endorsed.dirs= -classpath /usr/local/tomcat-/bin/bootstrap.jar:/usr/local/tomcat-/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/tomcat- -Dcatalina.home=/usr/local/tomcat- -Djava.io.tmpdir=/usr/local/tomcat-/temp org.apache.catalina.startup.Bootstrap start
root : pts/ :: /usr/bin/java -Djava.util.logging.config.file=/usr/local/tomcat-/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize= -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK= -Dignore.endorsed.dirs= -classpath /usr/local/tomcat-/bin/bootstrap.jar:/usr/local/tomcat-/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/tomcat- -Dcatalina.home=/usr/local/tomcat- -Djava.io.tmpdir=/usr/local/tomcat-/temp org.apache.catalina.startup.Bootstrap start
二、修改两个容器的web首页,并测试两个容器是否正常


三、启动Nginx并查看进程
[root@www ~]# /usr/local/nginx/sbin/./nginx
[root@www ~]# ps -ef|grep nginx
root 5354 1 0 13:00 ? 00:00:00 nginx: master process /usr/local/nginx/sbin/./nginx
nobody 5355 5354 0 13:00 ? 00:00:00 nginx: worker process
四、开始实验:
Nginx代理服务器IP:192.168.249.132
Tomcat-1 IP:192.168.249.133:8080
Tomcat-2 IP:192.168.249.133:8081
1.配置测试反向代理
1)修改Nginx的配置文件
[root@www conf]# cat nginx.conf|grep -E -v "#|^$"
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name localhost;
location / {
proxy_pass http://192.168.249.133:8080; #将请求转向后端定义的Tomcat-1上.
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
2)重新载入nginx.conf
[root@www conf]# cat nginx.conf|grep -E -v "#|^$"
3)访问Nginx代理服务器,查看是否跳转

2.负载均衡算法测试——轮询算法
1)在nginx.conf的server块里写入upstream配置块,并修改proxy_pass参数
[root@www conf]# cat nginx.conf|grep -E -v "#|^$"
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
upstream nginxtest {
server 192.168.249.133:8080;
server 192.168.249.133:8081;
}
server {
listen 80;
server_name localhost;
location / {
proxy_pass http://nginxtest;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
2)重新载入nginx.conf
[root@www conf]# ../sbin/./nginx -s reload
3)多次访问Nginx代理服务器


一直刷新页面会发现随机出现两个网页,这就是nginx默认的负载均衡算法:轮询算法
3.负载均衡权重测试——权重算法
1)在nginx.conf的server块里修改upstream配置块,在其中server参数后添加weight参数
[root@www conf]# cat nginx.conf|grep -E -v "#|^$"
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
upstream nginxtest {
server 192.168.249.133:8080 weight=3;
server 192.168.249.133:8081 weight=2;
}
server {
listen 80;
server_name localhost;
location / {
proxy_pass http://nginxtest;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
2)重新载入nginx.conf
[root@www conf]# ../sbin/./nginx -s reload
3)访问nginx代理服务器
发现刷新三次是tomcat-1后,后两次刷新是tomcat-2.
剩下的两种算法持续更新哦……
Nginx代理和负载均衡实验的更多相关文章
- Nginx代理与负载均衡配置与优化
Nginx代理 Nginx从0.7.48版本开始,支持了类似Squid的缓存功能.Nginx的Web缓存服务主要由proxy_cache相关指令集和fastcgi_cache相关指令集构成,前者用于反 ...
- Nginx代理与负载均衡
序言 Nginx的代理功能与负载均衡功能是最常被用到的,关于nginx的基本语法常识与配置已在上篇文章中有说明,这篇就开门见山,先描述一些关于代理功能的配置,再说明负载均衡详细. Nginx代理服务的 ...
- 12.Nginx代理与负载均衡
1.什么是代理? 代为办理 --> 代理 2.Nginx正向代理.反向代理 正向代理: --> 上网 | 路由器替代 反向代理: --> 正向与反向代理的区别: 区别在于形式上服务的 ...
- nginx代理,负载均衡
#代理,如:通过代理实现访问百度(单个机器)创建vim proxy.conf内容如下server { listen 80; server_name www.baidu.com; location / ...
- 使用nginx代理weblogic负载方案
之前一直用apache来做weblogic的前端,由于nginx对静态内容的出色性能,不得不转投nginx.这里就不 再写weblogic的安装了. 安装nginx nginx需要pcre做支持,一般 ...
- Nginx 反向代理、负载均衡、页面缓存、URL重写及读写分离详解
转载:http://freeloda.blog.51cto.com/2033581/1288553 大纲 一.前言 二.环境准备 三.安装与配置Nginx 四.Nginx之反向代理 五.Nginx之负 ...
- 通过Nginx+tomcat+redis实现反向代理 、负载均衡及session同步
一直对于负载均衡比较陌生,今天尝试着去了解了一下,并做了一个小的实验,对于这个概念有一些认识,在此做一个简单的总结 什么是负载均衡 负载均衡,英文 名称为Load Balance,指由多台服务器以对称 ...
- Nginx反向代理、负载均衡、页面缓存、URL重写及读写分离详解
大纲 一.前言 二.环境准备 三.安装与配置Nginx 四.Nginx之反向代理 五.Nginx之负载均衡 六.Nginx之页面缓存 七.Nginx之URL重写 八.Nginx之读写分离 注,操作系统 ...
- Nginx 反向代理、负载均衡、页面缓存、URL重写、读写分离及简单双机热备详解
大纲 一.前言 二.环境准备 三.安装与配置Nginx (windows下nginx安装.配置与使用) 四.Nginx之反向代理 五.Nginx之负载均衡 (负载均衡算法:nginx负载算法 up ...
随机推荐
- iOS Touch ID使用
1.首先导入头文件 #import <LocalAuthentication/LocalAuthentication.h> 2.关键代码 - (void)validateTouchID { ...
- Java中的逆变与协变 专题
结论先行: PECS总结: 要从泛型类取数据时,用extends: 协变 要往泛型类写数据时,用super: 逆变 既要取又要写,就不用通配符(即extends与super都不用) 不变 List&l ...
- spring-mvc+freemarker整合(sonne_game网站开发03)
今天的任务就是在spring+mybatis+springmvc的基础上,将freemarker整合进来. freemarker是什么? freemarker是一种模板引擎.它的目的是基于模板和数据, ...
- 毕设(一)C#的百度api调用
这个学期就要毕业了,选了一个无人机地面站软件设计的题目,这几天也开始着手做, 首先做了一个百度地图的调用,这里因为是上位机的开发,所有就不介绍Javascript的 调用方法,核心是用到一个类Http ...
- 使用VS将 XML/Json 转为Model Class文件
环境: VS2015 Win10 XML例子: <OTA_GetRerStatusRQ EchoToken=" B3BB9248255BD851AC94" UserNam ...
- 手机软件没过多久就删了 APP到底得了什么病?
直击现场 PC互联网时代正渐行渐远,移动互联网的创业浪潮汹涌而至.2014年,中国成为拥有智能手机用户最多的国家,而疯狂生长的APP正占据新的风口.据了解,目前我国主要应用商店的APP已累计超过400 ...
- Qt在Windows下的三种编程环境搭建(图文并茂,非常清楚)good
尊重作者,支持原创,如需转载,请附上原地址:http://blog.csdn.net/libaineu2004/article/details/17363165 从QT官网可以得知其支持的平台.编译器 ...
- NSTimer 的简易使用方法
一.使用方式 1.声明NSTimer方法 static CGFloat sIntervalTime = 15.f; //定时刷新时间间隔 @property (nonatomic, stron ...
- 快速开发平台 WebBuilder 8.4 发布
WebBuilder是一款强大,全面和高效的应用开发和运行平台.基于浏览器的集成开发环境,可视化和智能化的设计,能轻松完成常规应用和面向手机的移动应用开发.高效.稳定和可扩展的特点,适合复杂企业级应用 ...
- 高可用的zookeeper
Install zookeeper wget http://mirrors.hust.edu.cn/apache/zookeeper/zookeeper-3.4.13/zookeeper-3.4.13 ...