服务器的负载均衡nginx+tomcat实现动静分离

 更新时间:2022年03月19日 13:14:26   作者:、重明  
这篇文章主要为大家介绍了服务器的负载均衡nginx+tomcat实现动静分离的案例实施步骤以及环境详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步

本文实验内容nginx+tomcat实现网站的动静分离功能

案例环境

主机信息

在这里插入图片描述

架构图

在这里插入图片描述

案例实施:

部署tomcat服务器

两台tomcat服务器上准备jdk和tomcat

jdk下载

tomcat下载

mkdir /tools
cd /tools
ls
apache-tomcat-8.5.70.tar.gz  jdk-8u181-linux-x64.tar.gz

安装jdk

mkdir -p /app/java
tar xf jdk-8u181-linux-x64.tar.gz -C /app/
ln -s /app/jdk1.8.0_181/ /app/jdk
vim /etc/profile
export JAVA_HOME=/app/jdk
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
export PATH=$PATH:$JAVA_HOME/bin

source /etc/profile
java -version
java version "1.8.0_181"
Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)

部署tomcat

tar xf apache-tomcat-8.5.70.tar.gz -C /app
ln -s /app/apache-tomcat-8.5.70/ /app/tomcat

启动tomcat并测试,tomcat默认启动8080端口

/app/tomcat/bin/startup.sh
ss -anpt | grep 8080
LISTEN     0      100       [::]:8080                  [::]:*                   users:(("java",pid=2375,fd=52))

在这里插入图片描述

在这里插入图片描述

看到上面这个页面说明部署成功

创建tomcat01站点主页

rm -rf /app/tomcat/webapps/ROOT/*
cat /app/tomcat/webapps/ROOT/index.jsp 
<%@ page language="java" import="java.util.*” pageEncoding="UTF-8"%>
<html>
  <head>
    <title>tomcat01</title>
  </head>
  <body>
    <% out.println("192.168.10.4,tomcat01");%>
    <img src="3333.jpg" />
  </body>
</html>

创建womcat02站点主页

rm -rf /app/tomcat/webapps/ROOT/*
cat /app/tomcat/webapps/ROOT/index.jsp 
<%@ page language="java" import="java.util.*“ pageEncoding="UTF-8"%>
<html>
  <head>
    <title>tomcat02</title>
  </head>
  <body>
    <% out.println("192.168.10.5,tomcat02");%>
    <img src="3333.jpg" />
  </body>
</html>

两台tomcat服务器重启服务

/app/tomcat/bin/shutdown.sh 
/app/tomcat/bin/startup.sh 

部署nginx服务器

安装nginx依赖

yum -y install gcc gcc-c++ autoconf pcre-devel make automake httpd-tools enopssl-devel

配置nginx软件源

cat /etc/yum.repos.d/nginx.repo 
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

安装nginx服务并启动

yum clean all
yum makecache
yum -y install nginx
systemctl enable --now nginx

yum安装的nginx已启用配置文件分离功能,我们使用默认的配置文件

cat /etc/nginx/nginx.conf
include /etc/nginx/conf.d/*.conf;
# 修改默认配置文件
vim /etc/nginx/conf.d/default.conf
server {
    listen       80;
    server_name  192.168.10.3;

创建站点首页

cd /usr/share/nginx/html/
# 准备一张图片
ls
3333.jpg  50x.html  index.html
# 配置站点首页
vim index.html
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
    body {
        width: 35em;
        margin: 0 auto;
        font-family: Tahoma, Verdana, Arial, sans-serif;
    }
</style>
</head>
<body>
        <img src="3333.jpg" />
</body>
</html>

重启nginx服务

systemctl reload nginx

呐,图片

在这里插入图片描述

部署nginx-lb服务器

安装步骤与nginx01前三步相同

创建负载均衡配置文件

vim /etc/nginx/conf.d/proxy.conf
upstream tomcat {
	server 192.168.10.4:8080;
	server 192.168.10.5:8080;
}
upstream static {
	server 192.168.10.3:80;
}
server {
	listen 80;
	server_name 192.168.10.2;
	location / {
		proxy_pass http://tomcat;
	}
	location ~* .*\.(png|gif|jpg)$ {
		proxy_pass http://static;
	}
}

重启nginx服务

nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
systemctl reload nginx

原理为默认会访问tomcat后端服务器,但当网页中有静态图片时会在static后端中访问

访问测试:达到一个负载均衡且动静分离的效果

在这里插入图片描述

在这里插入图片描述

以上就是服务器的负载均衡nginx+tomcat实现动静分离的详细内容,更多关于负载均衡nginx+tomcat动静分离的资料请关注脚本之家其它相关文章!

相关文章

  • Nginx应对Permission denied和File not found的配置

    Nginx应对Permission denied和File not found的配置

    这篇文章主要介绍了Nginx应对Permission denied和File not found的错误配置,文中介绍了两个PHP程序使用时出现相关问题后的解决案例,需要的朋友可以参考下
    2015-12-12
  • Nginx访问日志切割的3种实现方法

    Nginx访问日志切割的3种实现方法

    这篇文章主要给大家介绍了关于Nginx访问日志切割的3种实现方法,随着访问量的增长,日志文件会越来越大,时间长既会影响访问的速度,也会占用一部分磁盘空间,这时候就需要日志切割了,需要的朋友可以参考下
    2023-08-08
  • 使用Nginx代理上网的方法

    使用Nginx代理上网的方法

    这篇文章主要介绍了使用Nginx代理上网的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-05-05
  • Nginx之为已安装nginx动态添加模块的方法

    Nginx之为已安装nginx动态添加模块的方法

    本篇文章主要介绍了Nginx之为已安装nginx动态添加模块的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-04-04
  • nginx配置客户端保存cookie的实现

    nginx配置客户端保存cookie的实现

    本文主要介绍了nginx配置客户端保存cookie的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-03-03
  • Nginx 安装笔记(含PHP支持、虚拟主机、反向代理负载均衡)

    Nginx 安装笔记(含PHP支持、虚拟主机、反向代理负载均衡)

    Nginx安装简记(含PHP支持、虚拟主机、反向代理负载均衡) Nginx,据说高性能和稳定性比Apache还牛,并发连接处理能力强,低系统资源消耗。目前已有250多万web站点在使用
    2009-10-10
  • Nginx的安装和多域名配置的实现方法

    Nginx的安装和多域名配置的实现方法

    这篇文章主要介绍了Nginx的安装和多域名配置的实现方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-09-09
  • 详解Linux环境下使Nginx服务器支持中文url的配置流程

    详解Linux环境下使Nginx服务器支持中文url的配置流程

    这篇文章主要介绍了Linux环境下使Nginx服务器支持中文url的配置流程,文中还介绍了一个在Linux下将非UTF-8的文件名转换为UTF-8编码,的方法,需要的朋友可以参考下
    2016-04-04
  • 使用nginx搭建点播和直播流媒体服务器的方法步骤

    使用nginx搭建点播和直播流媒体服务器的方法步骤

    本篇文章主要介绍了使用nginx搭建点播和直播流媒体服务器的方法步骤,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-03-03
  • 修改配置解决Nginx服务器中常见的上传与连接错误

    修改配置解决Nginx服务器中常见的上传与连接错误

    这篇文章主要介绍了修改配置解决Nginx服务器中常见的上传与连接错误的方法,分别针对Nginx的413错误与111错误,需要的朋友可以参考下
    2016-01-01

最新评论