Nginx搭载负载均衡及前端项目部署

news/2024/7/10 0:02:39 标签: nginx, 负载均衡, java, 运维, linux, 数据库

目录

​编辑

一.Nginx安装

1.安装所需依赖

2.下载并解压Nginx安装包

nginx-toc" style="margin-left:40px;">3.安装nginx

4.启动Nginx服务

二.Tomcat负载均衡

 1.准备环境

1.1 准备两个Tomcat

 1.2 修改端口号

1.3 配置Nginx服务器集群

2.效果展示

​编辑三.前端项目打包

​编辑四.前端项目部署

1.上传项目

 2.修改代理服务器

3. 配置域名


 

一.Nginx安装

1.安装所需依赖

yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel

2.下载并解压Nginx安装包

wget http://nginx.org/download/nginx-1.13.7.tar.gz
tar -xvf nginx-1.13.7.tar.gz

nginx">3.安装nginx

进入到/usr/local/nginx/sbin目录

cd /usr/local/nginx/sbin

 编译,执行配置: 考虑到后续安装ssl证书 添加两个模块

./configure --with-http_stub_status_module --with-http_ssl_module

安装make模块

make && make install 

4.启动Nginx服务

 进入 /usr/local/nginx/sbin 目录下(服务安装在当前目录下)

cd /usr/local/nginx/sbin

安装lsof模块

 yum install lsof

启动服务

./nginx

重启服务

./nginx -s reload

关闭服务

./nginx -s stop

开启防火墙端口号

firewall-cmd --zone=public --add-port=80/tcp --permanent

刷新防火墙规则

firewall-cmd --reload

开启服务后,在浏览器中输入自己的ip地址+:80出现以下截图说明安装成功 

 

二.Tomcat负载均衡

 1.准备环境

1.1 准备两个Tomcat

先进入到我们的Tomcat的上一级目录然后执行以下命令

cp -r apache-tomcat-8.5.20/ apache-tomcat-8.5.20_8081/

 1.2 修改端口号

进入到配置文件夹中的中

cd apache-tomcat-8.5.20_8081/conf

 修改配置文件中的端口号

vim server.xml

将当前的Tomcat配置文件中的端口号全部加一,防止与原来的端口号发生冲突

 进入到配置文件后点击insert进行修改

修改完成后点击Esc,输入:wq保存并退出 

1.3 配置Nginx服务器集群

在/usr/local/nginx/conf/文件中修改服务器集群和访问地址

#服务器的集群
upstream tomcat_list { #服务器集群名字
       server  127.0.0.1:8080 weight=1;  #服务器1  weight是权重的意思,权重越大,分配的概率越大。
      server  127.0.0.1:8081 weight=2; #服务器2  weight是权重的意思,权重越大,分配的概率越大
   }

location / {
            #root   html;
            proxy_pass   http://tomcat_list;
            index  index.html index.htm;
        } 

配置完成之后要将Nginx重新加载

 ./nginx -s reload

2.效果展示

为了展示效果Nginx同时负载两个Tomcat,将8081端口号的Tomcat界面进行更改 

当我们对前端Nginx运行页面进行刷新时,因为同时负载两个Tomcat所以刷新时会根据权重来展示两个tomcat页面的的概率

三.前端项目打包

进入到前端项目的根目录利用cmd窗口执行以下命令

 npm run build

 打包完成后会在我们的当前项目目录下有一个dist文件夹,这就是我们打包好的项目

 当我们的node环境运行时,点击这个静态网页也可以进入到我们的前端页面

四.前端项目部署

1.上传项目

在/usr/local/nginx/conf/目录下新建一个文件夹存放项目

mkdir mypro

 然后将项目拷贝到当前文件夹中

下载unzip命令解压zip文件

yum install -y unzip

 进入到当前存放项目的文件夹然后进行解压

cd mypro

unzip blog.zip

 2.修改代理服务器

添加新代理

location  ^~/api/ {
              proxy_pass http://tomcat_list/;
          }

将路径修改为自己前端项目路径

location / {
            root   /user/local/mypro/dist;
            #proxy_pass   http://tomcat_list;
            index  index.html index.htm;
        } 

3. 配置域名

修改当前文件目录下的hosts文件

C:\Windows\System32\drivers\etc

 在hosts文件中编写自己的ip地址和域名,这样就可以在本机通过域名去访问自己的项目了

修改完成之后,要将ngnix重新启动刷新一下 


http://www.niftyadmin.cn/n/5141524.html

相关文章

重温云栖,分享十年成长:我和云栖的故事

文章目录 前言活动背景我和云栖的交际历届峰会主题2009201020112012201320142015201620172018202120222023 技术带来的变化工作生活关注的领域 后记 前言 云栖大会,前身可追溯到2009年的地方网站峰会,2011年演变为阿里云开发者大会,2015年正式…

ROS常用命令及多机(TX2 与虚拟机)通信步骤

目录 ROS常用命令 创建工作空间 编译工作空间 创建功能包 编译功能包 检查环境变量 查看ROS节点关系图 rviz使用 Ubuntu常用命令 ROS多机通信步骤 配置网络 设置网络名称 修改bash 互ping虚拟机与tx2 tx2中启动master 虚拟机中添加镜像源 TX2中添加镜像源 ROS常…

Java 17 有必要升级到Java 21吗?

Java 17 有必要升级到Java 21吗? Java 21是Java平台的12个功能版本之一,于2023年9月19日发布。这个版本主要带来了数千项性能、稳定性和安全更新,并包含了15个重大的新特性和增强。其中最重要的特性之一是虚拟线程的最终化,这些线…

splice,slice,split傻傻分不清?

做个笔记📒 一、splice数组方法,更改原数组 使用方法: splice(start) splice(start, deleteCount) splice(start, deleteCount, item1) splice(start, deleteCount, item1, item2, itemN) start: 开始索引 deleteCount:需要删除的…

[论文笔记]BGE

引言 今天介绍论文BGE,是智源开源的语义向量模型,BAAI General Embedding。 作者发布了C-Pack,一套显著推进中文嵌入领域的资源包。包括三个重要资源: 1) C-MTEB是一个全面的中文文本嵌入基准,涵盖了6个任务和35个数据集。 2) C-MTP是一个从标记和未标记的中文语料库中选…

Mysql高级操作和六大约束

一.数据库高级操作 1.1.克隆表 (1)克隆表,将数据表的数据记录生成到新的表中 方法一: create table test01 like KY08; #通过LIKE方法,复制KY08表结构生成test01 表 insert into test01 select * from KY08; #此方法…

C#--继承

提高开发效率的一种手段 继承就是把大家共性的东西提取出来,共享 被僵尸咬一口你也是僵尸 C#不支持多重继承 C#类可以派生自另一个类和任意多个接口 继承具有单根性,一个派生类只能继承一个父类 如果没有写继承自那个类,默认继承object类&am…

springboot + minio 实现断点续传、秒传

基于springboot minio 实现的断点续传和秒传功能 Controller /*** 断点续传* param chunk 文件块对象(分片除了最后一片,必须大于等于5M,minio固定要求)* return 文件块信息*/RequestMapping(value "/fileUpload", …