一、构建两个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代理和负载均衡实验的更多相关文章

  1. Nginx代理与负载均衡配置与优化

    Nginx代理 Nginx从0.7.48版本开始,支持了类似Squid的缓存功能.Nginx的Web缓存服务主要由proxy_cache相关指令集和fastcgi_cache相关指令集构成,前者用于反 ...

  2. Nginx代理与负载均衡

    序言 Nginx的代理功能与负载均衡功能是最常被用到的,关于nginx的基本语法常识与配置已在上篇文章中有说明,这篇就开门见山,先描述一些关于代理功能的配置,再说明负载均衡详细. Nginx代理服务的 ...

  3. 12.Nginx代理与负载均衡

    1.什么是代理? 代为办理 --> 代理 2.Nginx正向代理.反向代理 正向代理: --> 上网 | 路由器替代 反向代理: --> 正向与反向代理的区别: 区别在于形式上服务的 ...

  4. nginx代理,负载均衡

    #代理,如:通过代理实现访问百度(单个机器)创建vim proxy.conf内容如下server { listen 80; server_name www.baidu.com; location / ...

  5. 使用nginx代理weblogic负载方案

    之前一直用apache来做weblogic的前端,由于nginx对静态内容的出色性能,不得不转投nginx.这里就不 再写weblogic的安装了. 安装nginx nginx需要pcre做支持,一般 ...

  6. Nginx 反向代理、负载均衡、页面缓存、URL重写及读写分离详解

    转载:http://freeloda.blog.51cto.com/2033581/1288553 大纲 一.前言 二.环境准备 三.安装与配置Nginx 四.Nginx之反向代理 五.Nginx之负 ...

  7. 通过Nginx+tomcat+redis实现反向代理 、负载均衡及session同步

    一直对于负载均衡比较陌生,今天尝试着去了解了一下,并做了一个小的实验,对于这个概念有一些认识,在此做一个简单的总结 什么是负载均衡 负载均衡,英文 名称为Load Balance,指由多台服务器以对称 ...

  8. Nginx反向代理、负载均衡、页面缓存、URL重写及读写分离详解

    大纲 一.前言 二.环境准备 三.安装与配置Nginx 四.Nginx之反向代理 五.Nginx之负载均衡 六.Nginx之页面缓存 七.Nginx之URL重写 八.Nginx之读写分离 注,操作系统 ...

  9. Nginx 反向代理、负载均衡、页面缓存、URL重写、读写分离及简单双机热备详解

    大纲 一.前言 二.环境准备 三.安装与配置Nginx  (windows下nginx安装.配置与使用) 四.Nginx之反向代理 五.Nginx之负载均衡  (负载均衡算法:nginx负载算法 up ...

随机推荐

  1. WPF中的图像处理简介

    原文:WPF中的图像处理简介 和Winform中的GDI+相比,WPF提供了一组新的API用于显示和编辑图像.新API特点如下: 适用于新的或专用图像格式的扩展性模型. 对包括位图 (BMP).联合图 ...

  2. .NET与Java互通AES算法加密解密

    /// <summary>AES加密</summary> /// <param name="text">明文</param> /// ...

  3. Android零基础入门第51节:进度条ProgressBar

    原文:Android零基础入门第51节:进度条ProgressBar 不知不觉这已经是第51期了,在前面50期我们学了Android开发中使用频率非常高的一些UI组件,当然这些组件还不足够完成所有AP ...

  4. Indy9的TIdFTPServer封装类

    在Delphi 7开发下有强大的Indy控件,版本为9,要实现一个FTP服务器,参考自带的例子,发现还要写很多函数,而且不支持中文显示文件列表等等.于是,自己改进封装了下,形成一个TFTPServer ...

  5. 利用消息机制实现VC与Delphi之间的通讯(发送自定义消息)

    摘要: 本文介绍了使用Windows消息机制实现由不同语言编制的程序之间的相互通讯.联系,并以当前较为流行的两种语言Microsoft Visual C++ 6.0和Borland delphi 5. ...

  6. 使用SqlSugar封装的数据层基类

    首先简单封装了个DbContext public class DbContext { #region 属性字段 private static string _connectionString; /// ...

  7. FMXUI中的三大杀器:TView、TLinearLayout、TRelativeLayout

    好了,今天我们来介绍下FMXUI中的三大杀器:TView.TLinearLayout.TRelativeLayout. [名词定义] 非布局组件: 组件名不是以Layout结尾的组件,Delphi自带 ...

  8. 10秒完成Linux系统pip在线安装

    对于Python开发攻城狮及系统运维攻城狮来说,pip的安装那是必不可少的一个过程.鉴于网上很多安装过程写得过于复杂,本人根据pip官方手册总结了以下最为快捷的安装方式,只需要2步操作. curl h ...

  9. Awesome C/C++(图像部分)

    GUI Graphic User Interface CEGUI - Flexible, cross-platform GUI library. FLTK - Fast, light, cross-p ...

  10. cookie,session,用户认证组件

    一. 绘画跟踪技术 在客户端与服务端的一次会务中,多次的请求与相应,HTTP协议是无状态协议,也就是说每个请求都是独立的!无法记录前一次请求的状态.会话跟踪技术即能够实现多次回话间信息共享的作用,HT ...