服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

云服务器|WEB服务器|FTP服务器|邮件服务器|虚拟主机|服务器安全|DNS服务器|服务器知识|Nginx|IIS|Tomcat|

服务器之家 - 服务器技术 - Nginx - 服务器的负载均衡nginx+tomcat实现动静分离

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

2022-07-29 09:47、重明 Nginx

这篇文章主要为大家介绍了服务器的负载均衡nginx+tomcat实现动静分离的案例实施步骤以及环境详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步

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

案例环境

主机信息

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

架构图

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

案例实施:

部署tomcat服务器

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

jdk下载

tomcat下载

?
1
2
3
4
mkdir /tools
cd /tools
ls
apache-tomcat-8.5.70.tar.gz  jdk-8u181-linux-x64.tar.gz

安装jdk

?
1
2
3
4
5
6
7
8
9
10
11
12
13
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

?
1
2
tar xf apache-tomcat-8.5.70.tar.gz -c /app
ln -s /app/apache-tomcat-8.5.70/ /app/tomcat

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

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

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

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

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

创建tomcat01站点主页

?
1
2
3
4
5
6
7
8
9
10
11
12
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站点主页

?
1
2
3
4
5
6
7
8
9
10
11
12
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服务器重启服务

?
1
2
/app/tomcat/bin/shutdown.sh
/app/tomcat/bin/startup.sh

部署nginx服务器

安装nginx依赖

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

配置nginx软件源

?
1
2
3
4
5
6
7
8
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服务并启动

?
1
2
3
4
yum clean all
yum makecache
yum -y install nginx
systemctl enable --now nginx

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

?
1
2
3
4
5
6
7
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;

创建站点首页

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
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服务

?
1
systemctl reload nginx

呐,图片

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

部署nginx-lb服务器

安装步骤与nginx01前三步相同

创建负载均衡配置文件

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
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服务

?
1
2
3
4
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+tomcat实现动静分离的详细内容,更多关于负载均衡nginx+tomcat动静分离的资料请关注服务器之家其它相关文章!

原文链接:https://yyang.blog.csdn.net/article/details/122643527

延伸 · 阅读

精彩推荐
  • NginxNginx常用功能详解

    Nginx常用功能详解

    NGiNX 是个非常优秀的HTTP 服务器软件,可以通过设置有实现许多功能,如目录保护、IP访问限制、防盗链、下载限速及设置多域名等等 ...

    hebedich6862019-10-21
  • NginxNginx配置Tcp负载均衡的方法

    Nginx配置Tcp负载均衡的方法

    这篇文章主要为大家详细介绍了Nginx配置Tcp负载均衡的方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    高二的笔记3902022-07-26
  • NginxLinux centos7环境下Nginx安装教程

    Linux centos7环境下Nginx安装教程

    这篇文章主要为大家详细介绍了Linux centos7环境下Nginx安装教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 ...

    随缘相识-(志同道合)2982019-11-25
  • NginxNginx搭建图片视频服务器的部署步骤

    Nginx搭建图片视频服务器的部署步骤

    这篇文章主要介绍了Nginx搭建图片视频服务器的部署步骤,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考...

    奔跑的毛球8822022-07-26
  • NginxNginx配置https原理及实现过程详解

    Nginx配置https原理及实现过程详解

    这篇文章主要介绍了Nginx配置https原理及实现过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以...

    海绵般汲取4842020-10-01
  • NginxNginx服务器中强制使用缓存的配置及缓存优先级的讲解

    Nginx服务器中强制使用缓存的配置及缓存优先级的讲解

    这篇文章主要介绍了Nginx服务器中强制使用缓存的配置及缓存优先级的讲解,一定程度上可以帮助大家解决Nginx不缓存或缓存失效的问题,需要的朋友可以参考...

    lmdkfs4992019-11-08
  • NginxNginx可视化配置工具NginxWebUI的使用

    Nginx可视化配置工具NginxWebUI的使用

    本文主要介绍了Nginx可视化配置工具NginxWebUI的使用,可以使用 WebUI 配置 Nginx 的各项功能,包括端口转发,反向代理,ssl 证书配置,负载均衡等,感兴趣的...

    IT_狂奔者10782022-07-24
  • NginxNginx 负载均衡是什么以及该如何配置

    Nginx 负载均衡是什么以及该如何配置

    这篇文章主要介绍了Nginx 负载均衡是什么以及该如何配置,帮助大家更好的理解和使用Nginx服务器,感兴趣的朋友可以了解下...

    雪山飞猪6832021-03-08