文章目录

  • Tomcat概述
  • Ngiinx概述
    • Nginx负载均衡实现原理
    • Nginx动静分离实现原理
  • 来吧!展示!!
    • 实验①
      • 搭建 Nginx 服务器
      • 搭建 Tomcat 服务器
      • 验证实验
    • 实验②
      • Tomcat01 配置
      • Nginx 配置
      • 测试实验

Tomcat概述

Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat是Apache 服务器的扩展,但运行时它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。

Ngiinx概述

Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。

特点

  • 支持高达50000个并发连接响应
  • 拥有强大的静态资源处理能力
  • 运行稳定
  • 硬件资源占用很低

Nginx负载均衡实现原理

示意图
Ngxin配置参数

upstream 服务器池 { }

  • 配置之后的后端服务器,让其为自己提供响应数据
    proxy_pass http://服务器地址
  • 配置将访问请求转发给后端服务器池的服务器处理

Nginx动静分离实现原理

服务费接收来自客户端的请求中基友静态资源也有动态资源,静态资源由nginx提供,动态资源由nginx转发给后端服务器提供服务。

nginx处理静态页面对比tomcat优势

  • Nginx处理静态页面的效率远高于Tomcat
  • 若Tomcat的请求量为1000次,则Nginx的请求量为6000次
  • Tomcat每秒吞吐量为 0.6M,Nginx的每秒吞吐量为3.6M
  • Nginx处理静态资源的能力是Tomcat的6倍

来吧!展示!!

nginx服务ip:20.0.0.11
cat01:20.0.0.3
cat02:20.0.0.4

实验①

搭建 Nginx 服务器

安装环境依赖包
[root@nginx bao]# yum -y install \
> pcre-devel \
> zlib-devel \
> gcc gcc-c++ \
> make
[root@nginx bao]# useradd -M -s /sbin/nologin nginx
[root@nginx bao]# tar zxvf nginx-1.12.2.tar.gz
[root@nginx bao]# cd nginx-1.12.2/
[root@nginx nginx-1.12.2]# ./configure \
> --prefix=/usr/local/nginx \
> --user=nginx \
> --group=nginx \
> --with-http_stub_status_module \  ##统计模块
> --with-http_gzip_static_module \  ##压缩模块
> --with-http_flv_module         ##视频模块
[root@nginx nginx-1.12.2]# make && make install
[root@nginx nginx-1.12.2]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/

编辑配置文件

[root@nginx nginx-1.12.2]# vim /usr/local/nginx/conf/nginx.conf#gzip  on;   ##找到这行,在下面添加upstream catserver {          ##设置节点服务器,你们做的时候名字起的正规点啊哈哈哈server 20.0.0.3:8080 weight=1;  ##指向cat01 IP,weight指的是权重server 20.0.0.4:8080 weight=1;  ##看上面自己理解吧}server {listen       80;server_name  localhost;#charset koi8-r;#access_log  logs/host.access.log  main;location / {root   html;index  index.html index.htm;}location ~.*.jsp$ {  ##往下加,匹配到以 jsp 结尾的网页再两台节点服务器中轮询          proxy_pass http://catserver;}
[root@nginx nginx-1.12.2]# systemctl stop firewalld
[root@nginx nginx-1.12.2]# setenforce 0

搭建 Tomcat 服务器

安装、配置tomcat
两台通样操作

[root@cat01 bao]# tar zxvf jdk-8u91-linux-x64.tar.gz
[root@cat01 bao]# mv jdk1.8.0_91/ /usr/local/
[root@cat01 bao]# vim /etc/profile
export JAVA_HOME=/usr/local/jdk1.8.0_91
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
[root@cat01 bao]# source /etc/profile
[root@cat01 bao]# java -version
java version "1.8.0_91"
Java(TM) SE Runtime Environment (build 1.8.0_91-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.91-b14, mixed mode)[root@cat01 bao]# tar zxvf apache-tomcat-8.5.16.tar.gz
[root@cat01 bao]# mv apache-tomcat-8.5.16 /usr/local/tomcat
[root@cat01 bao]# cd /usr/local/tomcat/
[root@cat01 tomcat]# ln -s /usr/local/tomcat/bin/shutdown.sh /usr/local/bin
[root@cat01 tomcat]# ln -s /usr/local/tomcat/bin/startup.sh /usr/local/bin
[root@cat01 bao]# mkdir -p /web/cat01
[root@cat01 bao]# vim /web/cat01/index.jsp   ##cat02 改成 /web/cat02
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html><head><title>CAT01 web</title></head><body><% out.println("This is CAT01.");%>   ##另一台配置 This is CAT02.</body>
</html>[root@cat01 bao]# vim /usr/local/tomcat/conf/server.xml
148       <Host name="localhost"  appBase="webapps"
149             unpackWARs="true" autoDeploy="true">  ##主配置文件里找到这个服字段,在下面添加,意思差不多是重新定义主页位置
150       <Context docBase="/web/cat01" path="" reloadable="false">
151       </Context>
[root@cat01 bao]# startup.sh
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr/local/jdk1.8.0_91/jre
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
[root@cat01 bao]# netstat -ntap |grep 8080
tcp6       0      0 :::8080                 :::*                    LISTEN      74552/java

验证实验



实验成功,当匹配到动态网页时轮询指向两台web服务器,但是注意工作中两台主机的页面必须一样

实验②

实验需求:nginx处理静态图片,Tomcat处理动态页面配置
Tomcat指路径,nginx放图片
目录名称需要和Java项目名称相同

Tomcat01 配置

02我就不改了,麻烦

[root@cat01 bao]# vim /web/cat01/index.jsp
<!DOCTYPE html>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="java.util.Date" %>
<%@ page import="java.text.SimpleDateFormat" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="nginx/html; charset=UTF-8">  ##位置和图的位置一样,nginx/html
<title>CAT01 web</title>
</head>
<body>
<div>This is CAT01.</div><br>
<img src="FDL.jpg">
</body>
</html>

Nginx 配置

[root@nginx /]# cd /usr/local/nginx/html/
[root@nginx html]# rz -E
rz waiting to receive.
[root@nginx html]# ls
50x.html  FDL.jpg  index.html[root@nginx html]# vim /usr/local/nginx/conf/nginx.confserver {listen       80;server_name  localhost;##添加下面location ~.*\.(gif|jpg|jpeg|png|bmp|swf|css)$ {root html;expires 30s;

测试实验

实验成功

Nginx+Tomcat 负载均衡+动静分离相关推荐

  1. ngixn+tomcat负载均衡 动静分离配置 (nginx反向代理)

    文章目录 Tomcat主要配置文件 Nginx负载均衡实现原理 实验环境 动静分离配置 创建静态页面 配置动态页面 图片动静分离 Tomcat主要配置文件 bin:存放启动和关闭Tomcat脚本 co ...

  2. Nginx+Tomcat负载均衡、动静分离

    目录 一:Nginx实现负载均衡原理 二:Nginx动静分离原理 三:Nginx+Tomcat负载均衡.动静分离实验 3.1部署Nginx负载均衡器 3.1.1关闭防火墙,将安装nginx所需的软件包 ...

  3. Nginx+Tomcat负载均衡、动静分离集群

    Nginx+Tomcat负载均衡.动静分离集群 一.Nginx实现负载均衡原理 二.Nginx 配置反向代理的主要参数 三.Nginx 动静分离实现原理和优势 1.Nginx 静态处理优势 2.动静分 ...

  4. HAproxy负载均衡动静分离实现及配置详解

     HAproxy负载均衡动静分离实现及配置详解 HAproxy的介绍 HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠的一种解决方案.HAP ...

  5. Nginx+Tomcat 负载均衡集群方案

    2019独角兽企业重金招聘Python工程师标准>>> Nginx+Tomcat 负载均衡集群方案 该方案是我之前做过的一个项目生产应用的,目前运行良好,如何您生产使用,请先做好测试 ...

  6. Nginx+Tomcat负载均衡

    Nginx+Tomcat 负载均衡集群方案 该方案是我之前做过的一个项目生产应用的,目前运行良好,如何您生产使用,请先做好测试. 系统架构图 下载软件包 [root@Nginx-node1 src]# ...

  7. 搭建Nginx+Tomcat 负载均衡集群

    Nginx+Tomcat 负载均衡集群 一. 实验拓扑: 二. 实验要求: 1. 试验环境: 主机 操作系统 所需软件 Nginx服务器 rhel 6.5 x86_64 nginx-1.6.0.tar ...

  8. ↑nginx+tomcat+httpd实现动静分离↑

    ↑nginx+tomcat+httpd实现动静分离↑ 2013-10-01 16:39:54 标签:tomcat动静分离 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本 ...

  9. Nginx+Tomcat负载均衡和动静分离理论实操详解来袭!

    文章目录 一:关于动静分离和负载均衡介绍 1.1:Nginx+Tomcat的动静分离 1.2:Nginx+Tomcat的负载均衡 1.3:Nginx配置反向代理的主要参数 二:Nginx+Tomcat ...

  10. Nginx的动态代理,负载均衡,动静分离的简单使用

    nginx 一 Nginx介绍 1.1 为什么要学习Nginx 问题1: 客户端到底要将请求发送那台服务器 问题2:所有客户端的请求都发送给了服务器1 问题3:客户端发送的请求可能是申请静态资源的,也 ...

最新文章

  1. 虚拟化技术KVM的搭建
  2. php data 算出差几天,出差天数一般怎么算。。。
  3. Java基础整理(三)
  4. Adb命令笔记 --菜鸟的笔记
  5. 【尚锐科技课堂】安全健康位置云平台系统
  6. OpenCV学习笔记(九) 重映射、仿射变换
  7. #Pragma 用法总结
  8. 直流电压前馈控制数字逆变电源设计与实现
  9. 漫谈数据仓库中的元数据管理
  10. 朱晔的互联网架构实践心得S1E1:Pilot
  11. UIAutomatorViewer
  12. 为什么Word字间距异常的大?怎么修正排版?
  13. 2u服务器支持29块硬盘,01-正文
  14. puzzle(1036)数邻、多米诺骨牌
  15. 病毒下载器利用搜索引擎广告推广,推装超过30款软件
  16. 在html中frame标签的作用,HTML中的frame标签常见的6大属性,新手一定要悉知!
  17. dnw for linux(pc)
  18. 常见的几种协同设计平台对比分析
  19. oracle 索引命中条件,Oracle索引命中与扫描规律总结 | 学步园
  20. sciTE的一些设置

热门文章

  1. 蛋白质二级结构预测Linux,哪些蛋白质二级结构预测软件可以批量使用?
  2. Hadoop详解(七)——Hive的原理和安装配置和UDF,flume的安装和配置以及简单使用,flume+hive+Hadoop进行日志处理
  3. QT 删除QString空白字符
  4. 烤箱做披萨的做法 教你做火腿肠披萨
  5. CSS3炫酷模糊发光文字动画js特效
  6. 取得平均薪水最高的部门的部门编号
  7. python 操作word页眉表格_pythondocx读写word文档:插入图片和表格,设置表格样式、章节、页眉、页脚等,Pythondocx,Word...
  8. 深入理解 Laravel Eloquent(一)——基本概念及用法
  9. 数据结构之链表(Java实现)
  10. 深恶痛绝的No mapping found for HTTP request with URI