Nginx负载均衡 以及Linux前后端项目部署

这篇具有很好参考价值的文章主要介绍了Nginx负载均衡 以及Linux前后端项目部署。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、Nginx简介

Nginx是一款高性能的开源Web服务器和反向代理服务器。它由俄罗斯的程序设计师Igor Sysoev创建,旨在解决传统Web服务器的性能限制问题。

Nginx采用事件驱动的架构和异步非阻塞的处理方式,使其能够处理大量并发连接,并具备良好的性能表现。它能够处理静态文件、索引文件以及反向代理等功能,同时也支持HTTP、HTTPS、SMTP、POP3和IMAP等协议。

Nginx的特点包括:

  1. 高性能:Nginx使用异步非阻塞的事件驱动模型,可以更有效地处理并发请求,提供快速响应和高吞吐量。
  2. 轻量级:Nginx的代码量相对较少,占用系统资源少,启动速度快,适合用于低配置的服务器。
  3. 可扩展性:Nginx支持模块化的架构,可以通过第三方模块扩展功能,满足各种需求。
  4. 反向代理:Nginx可以作为反向代理服务器,将客户端的请求转发给后端的多个服务器,并根据配置进行负载均衡,提高系统的稳定性和可靠性。
  5. 高可靠性:Nginx具备优秀的容错能力,可以在大量并发请求中保持稳定的性能。
  6. 简单配置:Nginx的配置文件简洁明了,易于理解和管理。

由于其出色的性能和功能特点,Nginx被广泛应用于各种场景,如静态文件服务、动态Web应用服务、负载均衡、反向代理、缓存加速等。它已经成为互联网架构中重要的组件之一,并得到了全球范围内的广泛使用。

二、Nginx负载均衡

2.1 Nginx的安装

解压服务器中的nginx,我这里之前就下载好了,这里就不做演示了,具体如何将直接下载好的传输到服务器上可以查看我的上一篇文章

Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

在解压后的nginx目录中,下载四个所需要的依赖

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

Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

用于编译和安装 考虑到后续安装ssl证书 添加两个模块 

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

Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

make && make install

  1. make:这个命令用于编译软件。它会根据 configure 命令生成的配置文件来构建可执行文件。

  2. make install:这个命令用于安装编译好的软件。它会将生成的可执行文件、配置文件和其他必要的文件复制到相应的目录中,以便你可以使用该软件。

 Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

进入编译好的nginx目录

安装好的 nginx 服务在 /usr/local/nginx 下:

进入 /usr/local/nginx/sbin 目录下启动:

# 启动
./nginx

# 重启
./nginx -s reload

# 关闭
./nginx -s stop

Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

启动 

 Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

 如何查看nginx是否被启动了呢

下载插件

yum install lsof

执行命令:lsof -i:80

Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

 Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

在配置负载均衡前我们看一下我们的端口是否被放开,并且开放端口号为我们准备服务器做准备

 开放端口命令:firewall-cmd --zone=public --add-port=80/tcp --permanent
查看端口命令: firewall-cmd --reload && firewall-cmd --list-port

Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcatNginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcatNginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

2.2 Nginx配置服务器负载均衡

什么是服务器负载均衡?

以新浪微博为例子,当某个明星除了某些大瓜,微博可能就会因为用户的访问量,请求次数过多而导致服务器崩溃,如果只有一个服务器,那么就会导致整个网站瘫痪,所以为了防止这种情况,我们就可以搭建一个服务器集群,当其中的一个服务器崩溃之后,还有备用服务器可以使用,这样就大大提高了我们网站的稳定性和高并发性,并且Nginx的作用不只这些,在我们更新服务器静态资源时我们如果在服务器集群中一个一个配置过于麻烦,这时我们可以在集群中配置一个静态资源服务器,在更新资源时我们只需要更新静态资源服务器即可

Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

在配置服务器集群之前,我们需要准备两个服务器用来模拟,端口号分别为8081、8082

Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

 这里服务器我已经更改过了,在哪里更改可以查看我的上一篇文章

Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

为了区分,我们在服务器下的webapps/root/index中做个标识

Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

启动两台服务器

Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

接下来我们到编译好的nginx目录下创建服务器集群

记住一定是/usr/local/nginx/conf/nginx.conf

Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

将集群作为放入nginx代理 

Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

重启nginx

nginx -s reload 

Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

访问IP测试

Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

 此时我们可以关闭一台服务器来模拟服务器崩溃

Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

再次访问ip依然可以发现我们的服务器还是可以访问,这就是负载均衡,强大的Nginx 

Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

三、前端项目打包部署

我们已经知道后端maven打包项目的命令了,今天我们来打包前端的项目

在打包项目之前我们要修改两个地方

将项目目录下的config文件夹里的index.js文件中,将build对象下的assetsPublicPath中的“/”,改为“./”

Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

问题:使用vue-cli3脚手架搭建的项目,在打包文件上服务器的时候,其他的css,js样式都能正确加载出路径,
但是element的icon图标却不能正常加载出来。

问题分析:
加载的路径https://yxq.linksign.cn/static/css/static/fonts/element-icons.535877f.woff
本应该加载的路径https://yxq.linksign.cn/static/fonts/element-icons.535877f.woff
打包的路径
事实上是打包时候读取的文件路径多了两层;
找到build文件的utils.js 中有打包的路径,看看generateLoaders();
Extract CSS when that option is specified, 指定该选项时提取CSS
发现少了个公共路径,加上pubilcPath

if (options.extract) {
     return ExtractTextPlugin.extract({
       use: loaders,
       fallback: 'vue-style-loader',
       // 解决icon路径加载错误
       publicPath:'../../'
     })
   } else {
     return ['vue-style-loader'].concat(loaders)
   }

Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

 在本地测试项目后打包 npm run build

Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

 打包后会在项目的目录下生成一个dist目录,将其压缩

在远程服务器中的usr/local目录下创建一个存放前端项目的文件、

Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

将压缩包放入,并且解压

下载解压zip的插件   yum install -y unzip
 解压命令 unzip 解压文件名

Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcatNginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat 

在编译后的Nginx中更改Nginx配置文件用来导航路由到前端界面,并且重新配置服务器代理用来区分后端请求,因为后端的请求都带了api,所以我们用正则来验证即可

Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

接下来我们来访问前端项目,就会直接访问到前端项目中的主页面

Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

但是此时我们就能用了嘛,也许可以,但是如果有兄弟们的请求是以域名而不是ip为主的话便不行 

四、配置域名与ip的映射关系

有的兄弟们买了域名的,请求的地址就会如下

http://www.zking.com/api/T216_SSH

但是如果没有配置域名和ip的映射关系就会出现如下错误

Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

 这个时候我们就需要在测试项目C:\Windows\System32\drivers\etc\hosts中配置映射关系

Nginx负载均衡 以及Linux前后端项目部署,nginx,负载均衡,linux,服务器,运维,java,tomcat

centos7中虚拟域名设置
vim /etc/hosts文章来源地址https://www.toymoban.com/news/detail-738111.html

到了这里,关于Nginx负载均衡 以及Linux前后端项目部署的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • nginx连接前后端分离项目 或 负载均衡映射多个服务器

    nginx连接前后端分离项目 或 负载均衡映射多个服务器

    nginx的两种用法: 打通前后端项目,前后端分离的项目,通过nginx建立连接 负载均衡,一台机器请求转发至多个服务器 前端项目中的配置: 后端项目的ip和端口号就是正常的 下面看看nginx的配置文件: 将打包后的前端项目放这里: vue项目打包后会生成一个dist文件夹 放在服

    2024年02月05日
    浏览(12)
  • Nginx搭载负载均衡及前端项目部署

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

    目录 ​编辑 一.Nginx安装 1.安装所需依赖 2.下载并解压Nginx安装包 3.安装nginx 4.启动Nginx服务 二.Tomcat负载均衡  1.准备环境 1.1 准备两个Tomcat  1.2 修改端口号 1.3 配置Nginx服务器集群 2.效果展示 ​编辑三.前端项目打包 ​编辑四.前端项目部署 1.上传项目  2.修改代理服务器 3. 配

    2024年02月06日
    浏览(12)
  • 【Linux】在Ubuntu下部署nginx——nginx的负载均衡

    【Linux】在Ubuntu下部署nginx——nginx的负载均衡

    介绍 这里是小编成长之路的历程,也是小编的学习之路。希望和各位大佬们一起成长! 以下为小编最喜欢的两句话: 要有最朴素的生活和最遥远的梦想,即使明天天寒地冻,山高水远,路远马亡。 一个人为什么要努力? 我见过最好的答案就是:因为我喜欢的东西都很贵,

    2024年02月12日
    浏览(12)
  • Django笔记四十四之Nginx+uWSGI部署Django以及Nginx负载均衡操作

    Django笔记四十四之Nginx+uWSGI部署Django以及Nginx负载均衡操作

    本文首发于公众号:Hunter后端 原文链接:Django笔记四十四之Nginx+uWSGI部署Django以及Nginx负载均衡操作 这一篇笔记介绍如何使用 Nginx + uWSGI 来部署 Django。 上一篇笔记中有介绍直接使用 uWSGI 作为 web 服务器来部署 Django,这一篇笔记介绍如何使用 Nginx 来部署。 使用 Nginx 来部署相

    2024年02月05日
    浏览(14)
  • 【Linux】Nginx+Tomcat负载均衡、动静分离、多实例部署

    【Linux】Nginx+Tomcat负载均衡、动静分离、多实例部署

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 要求各 tomcat 实例配置不能有重复的端口号 第一个连接器默认监听8080端口,负责建立HTTP连接。在通过浏览器访问Tomcat服务器的Web应用时,使用的就是这个连接器。 第二个连接器默认监听8009端口,AJP端

    2024年02月09日
    浏览(12)
  • nginx 前后的分离 (ip/域名)访问 负载均衡

    nginx 前后的分离 (ip/域名)访问 负载均衡

    首先前端随便访问后端的一个端口,后端监听这个端口进行服务转发。 比如:8888 然后nginx在我们的服务器上部署两个后端 这里我用docker部署了两个 当然你也可以在两个服务器上面部署两个后端,只要在nginx配置代理的时候修改一下ip就可以了。 nginx配置

    2024年04月29日
    浏览(15)
  • Nginx负载均衡以及keepalived高可用实验

    Nginx负载均衡以及keepalived高可用实验

    目录 一、 Nginx负载均衡的标准和现象 二、什么是keepalived高可用 三、安装 四、配置 五、测试 六、 难点 七、问题及处理 八、总结 Nginx负载均衡通常具有以下标准和现象: 负载均衡算法:Nginx可以使用不同的负载均衡算法选择服务器。默认情况下,它使用轮询算法,但也支

    2024年02月13日
    浏览(6)
  • Nginx反向代理配置+负载均衡集群部署

    Nginx反向代理配置+负载均衡集群部署

    什么是代理 正向代理既是通过代理服务器访问外网资源,而反向代理与之相反是将局域网的资源通过反向代理服务器提供给互联网用户浏览和使用等。 实验环境图 流量过程 当客户端发起请求后通过Internet (本实验为NAT网卡)来到代理服务器上,代理服务器经算法选择后调用

    2024年02月13日
    浏览(16)
  • 【Nginx】静态资源部署、反向代理、负载均衡

    【Nginx】静态资源部署、反向代理、负载均衡

    个人简介:Java领域新星创作者;阿里云技术博主、星级博主、专家博主;正在Java学习的路上摸爬滚打,记录学习的过程~ 个人主页:.29.的博客 学习社区:进去逛一逛~ nginx配置文件整体分为三部分: 全局块 :Nginx运行相关的全局配置 events块 :网络连接相关的配置 http块 :代

    2024年02月13日
    浏览(9)
  • Nginx+Tomcat负载均衡、动静分离实例详细部署

    Nginx+Tomcat负载均衡、动静分离实例详细部署

    ●rr 轮询 负载均衡模式: 每个请求按时间顺序逐一分配到不同的后端服务器,如果超过了最大失败次数后(max_fails,默认1),在失效时间内(fail_timeout,默认10秒),该节点失效权重变为0,超过失效时间后,则恢复正常,或者全部节点都为down后,那么将所有节点都恢复为有效

    2024年02月13日
    浏览(12)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包