通俗点将,负载均衡就是因为访问流量太大,导致项目访问不流畅、甚至宕掉,所以通过一种分流的方式来缓解这种情况。

一、       工具

  nginx-1.8.0

  apache-tomcat-6.0.33

二、    目标

 实现高性能负载均衡的Tomcat集群:

三、    步骤

1、首先下载Nginx,要下载稳定版:

2、然后解压两个Tomcat,分别命名为apache-tomcat-6.0.33-1和apache-tomcat-6.0.33-2:

3、然后修改这两个Tomcat的启动端口,分别为18080和28080,下面以修改第一台Tomcat为例,打开Tomcat的conf目录下的server.xml:

共需修改3处端口:

当然第二台Tomcat也一样,如下图:

4、然后启动两个Tomcat,并访问,看是否正常:

5、然后修改上面两个Tomcat的默认页面(为了区分下面到底访问的是那一台Tomcat,随便改一下即可):

改完以后,进行访问,如下图:

6、OK,现在我们可以开始配置Nginx来实现负载均衡了,其实非常的简单,只需要配置好Nginx的配置文件即可:

配置如下(这里只进行了简单的配置,实际生产环境可以进行更详细完善配置):

worker_processes  1;#工作进程的个数,一般与计算机的cpu核数一致events {worker_connections  1024;#单个进程最大连接数(最大连接数=连接数*进程数)
}http {include       mime.types; #文件扩展名与文件类型映射表default_type  application/octet-stream;#默认文件类型sendfile        on;#开启高效文件传输模式,sendfile指令指定nginx是否调用sendfile函数来输出文件,对于普通应用设为 on,如果用来进行下载等应用磁盘IO重负载应用,可设置为off,以平衡磁盘与网络I/O处理速度,降低系统的负载。注意:如果图片显示不正常把这个改成off。keepalive_timeout  65; #长连接超时时间,单位是秒gzip  on;#启用Gizp压缩#服务器的集群upstream  netitcast.com {  #服务器集群名字 server    127.0.0.1:18080  weight=1;#服务器配置   weight是权重的意思,权重越大,分配的概率越大。server    127.0.0.1:28080  weight=2;}    #当前的Nginx的配置server {listen       80;#监听80端口,可以改成其他端口server_name  localhost;##############    当前服务的域名location / {proxy_pass http://netitcast.com;proxy_redirect default;}error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}}
}

核心配置如下:

7、首先,我们启动Nginx:

8、然后我们即可输入:localhost/index.jsp查看运行状况了第一次访问,发现访问的是Tomcat2上的程序:然后刷新,访问的还是Tomcat2上的程序:再刷新,发现变为了Tomcat1上的程序:再刷新,发现又变为了Tomcat2上的程序:

9.到此,我们利用Nginx已经实现了负载均衡的Tomcat集群。我们不断的刷新,发现访问Tomcat2的概率大概是Tomcat1的2倍,这是因为我们在Nginx中配置的两台Tomcat的权重起的作用,如下图:

Nginx+Tomcat windows环境下简单集群搭建相关推荐

  1. 环境搭建:Windows系统下Nacos集群搭建

    环境搭建:Windows系统下Nacos集群搭建 一.环境准备 名称 版本 下载地址 nacos NACOS 1.2.0 下载地址,提取码:5555 MySQL mysql Ver 14.14 Dis ...

  2. Apache+Tomcat+jk windows环境下的集群部署

    记一次在Windows服务器上搭建apatch+tomcat+jk的集群搭建过程,其中也遇到了很多问题,总结一下. 一.准备工作 1.apache-tomcat-7.0.88 2.Apche http ...

  3. Linux环境下Spark集群搭建

    Spark是通用的基于内存计算的大数据框架,可以和hadoop生态系统很好的兼容,以下来部署Spark集群 集群环境:3节点 Master:bigdata1 Slaves:bigdata2,bigda ...

  4. Windows下Kafka集群搭建

    一.Windows下Zookeeper集群搭建. 1.集群版本:2.8.1,3.0版本不再支持JDK8,不在需要Zookeeper. 2.Zookeeper版本:3.8.0. 3.Zookeeper三 ...

  5. Centos7环境下etcd集群的搭建

    Centos7环境下etcd集群的搭建一.简介"A highly-available key value store for shared configuration and service ...

  6. Hadoop简单集群搭建,三台虚拟机运行wordcount

    Hadoop简单分布式集群搭建,利用三台虚拟机 注:本文用到的hadoop版本是 hadoop-2.5.2,虚拟机是CentOS-6.10,虚拟机安装软件是VMware,java环境是 jdk1.8. ...

  7. Docker下ETCD集群搭建

    Docker下ETCD集群搭建 https://www.cnblogs.com/eagle6688/p/8287907.html 搭建集群之前首先准备两台安装了CentOS 7的主机,并在其上安装好D ...

  8. windows下Redis-cluster集群搭建

    目录 一.下载安装 二.搭建Redis集群 三.集群环境测试 四.将redis-cluster注册生windows服务 五.打开redis可视化工具,如图连接成功 一.下载安装 需要下载如下三个:Re ...

  9. Linux环境下Redis集群实践

    环境:centos 7 一.编译及安装redis源码 源码地址:redis版本发布列表 cd redis-3.2.8 sudo make && make install 二.创建节点 ...

最新文章

  1. linux 查看显卡信息
  2. Linux防火墙命令
  3. 基于go搭建微服务实践教程 (概览)
  4. LESSON 11.4 原理进阶:AdaBoost算法流程详解
  5. Kubernetes的三种集群外部访问方式及使用场景说明:NodePort、LoadBalancer和Ingress
  6. Linux学习之系统编程篇:利用 shm 进行进程间通信
  7. Andrew NG 机器学习编程作业5 Octave
  8. python 包和模块_Python中的包和模块实例
  9. 使用labelme进行图片语义分割数据的标注(如何转换为训练的灰度图,即像素值为类别值)
  10. 2022年最新《谷粒学院开发教程》:12 - 项目完结篇
  11. html期末作业代码网页设计——代码质量好-宠物网(8页) HTML+CSS+JavaScript 学生DW网页设计作业成品 web课程设计网页规划与设计 计算机毕设网页设计源码
  12. vi/vim保存报错:E37: No write since last change E162: No write since last change for buffer “[文件名称]“
  13. Metasploit -- 各类密码破解
  14. centos7搭建elastiflow
  15. Linux--pthread_once 的用法
  16. WSA无法调用GPU跑分解决方法
  17. [Java 内存]Java内存组成
  18. Labview-将控件嵌入表格教程1
  19. 三年是程序员的一个坎
  20. 4.测试基础(软件测试阶段的划分)

热门文章

  1. 关于可变字符串StringBuffer和String的区别总结
  2. 记录一次大对象导致的Java堆内存溢出问题
  3. 左击鼠标出现右击选项是怎么回事_跟着诗妍姐姐学电脑——鼠标
  4. 扩展内容(进程的通信方式)
  5. 自然语言处理中的模式(模式1.概率化模式)
  6. hdu 4143 A Simple Problem 数论
  7. 计算机秋招必备!广州互联网大厂企业整理清单!
  8. 【图表】java 24年发展历史及长期支持jdk版本(up to 2020.04)
  9. 【全0、全1的地址干嘛用的】几类特殊的IP地址,网络号全0,主机号全1等
  10. @EnableTransactionManagement原理