带你了解Linux中的【Nignx及负载均衡&动静分离】

                                        🏅我是默,一个在CSDN分享笔记的博主。📚📚 

🌟在这里,我要推荐给大家我的专栏《Linux》。🎯🎯

🚀无论你是编程小白,还是有一定基础的程序员,这个专栏都能满足你的需求。我会用最简单易懂的语言,带你走进代码的世界,让你从零开始,一步步成为编程大师。🚀🏆

🌈让我们在代码的世界里畅游吧!🌈

🎁如果感觉还不错的话请记得给我点赞哦!🎁🎁

💖期待你的加入,一起学习,一起进步💖💖

一.nginx介绍 

1.什么是nginx?

Nginx是一个高性能、开源的Web服务器、反向代理服务器和负载均衡器。它最初由Igor Sysoev编写,于2004年首次发布,并在其后的几年中获得了广泛的应用和快速发展。现在,Nginx已经成为许多大型网站和应用程序的常用Web服务器和代理服务器。

Nginx采用事件驱动、异步非阻塞的架构,可以处理大量的并发连接和请求,并能够有效地分配和管理系统资源。此外,它具有灵活的配置选项,可以通过简单的修改配置文件来实现各种功能,如反向代理、负载均衡、HTTPS等

Nginx的另一个显著特点是其高度的可扩展性和模块化。它支持各种各样的第三方模块,包括安全模块、缓存模块、日志模块等,使得开发者可以根据自己的需求进行灵活的定制和扩展。

总体来说,Nginx是一个优秀的、高性能的Web服务器和代理服务器,适用于处理大量并发请求、实现高可用性、高性能的应用程序。

2.nginx的应用场景 

Nginx在各种应用场景下都有广泛的应用,以下是一些常见的应用场景:

  1. Web服务器:Nginx可以作为一个高性能的Web服务器来提供静态文件的服务。通过配置Nginx,可以轻松地处理大量的并发请求,同时具备较低的内存和CPU消耗。

  2. 反向代理服务器:Nginx作为反向代理服务器可以将请求转发到后端的多个服务器上,实现负载均衡和高可用性。这对于处理大规模的流量和提高应用程序的性能非常有帮助。

  3. 负载均衡器:Nginx作为负载均衡器可以将请求分发到多个后端服务器上,根据预先定义的算法进行请求的路由。这样可以提高系统的可扩展性、稳定性和性能。

  4. 缓存服务器:Nginx可以作为缓存服务器,缓存静态资源或动态内容,从而减轻后端服务器的负担,提高响应速度和用户体验。

  5. HTTPS和SSL/TLS终端:Nginx支持HTTPS协议,可以作为SSL/TLS终端来处理加密通信。它可以处理证书管理、安全协议配置等,提供安全的通信环境。

  6. WebSocket代理:Nginx可以代理WebSocket连接,使得后端应用程序可以与前端进行实时双向通信。

需要注意的是,Nginx的应用场景非常丰富,可以根据具体的需求和架构进行灵活配置和使用。以上列举的只是一些常见的应用场景,实际上还有更多的用途和扩展性可供挖掘。

3.作用示意图

总结来说就是多个服务器代理一个请求ip

使用nginx好处:

1.有利于项目的稳定

2.降低服务器压力,高效响应用户请求,提高用户体验

4.动静分离示意图 

二.nginx的负载均衡(实战)

1.nginx安装

一键安装4个依赖
yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel

解压输入  tar -xvf nginx-1.13.7.tar.gz

# 编译,执行配置: 考虑到后续安装ssl证书 添加两个模块
./configure --with-http_stub_status_module --with-http_ssl_module

# 安装
make && make install

启动nginx

 启动
./nginx

# 重启
./nginx -s reload

# 关闭
./nginx -s stop

# 或者,指定配置文件启动
./nginx -c /usr/local/nginx/conf/nginx.conf

开放端口小编就不详细阐述了直接看图

以及效果展示

2.模拟负载均衡(构建两个服务器模拟)

删除原有项目

rm -rf oapro*


#准备2个tomcat(小编端口号修改过为8082
cp -r apache-tomcat-8.5.20/ apache-tomcat-8.5.20_8080/

然后在进入tomact的目录中的conf 

通过  vim server.xml 即可修改

然后在分别启动即可

修改nginx.conf文件

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

重新加载配置文件

./nginx  -s reload

在将项目部署到其中即可,在重新启动

3.前端项目打包

首页要确定前端项目能够正常启动

然后在进行打包

通过 npm run  build 即可打包

4.前台部署

通过配置路由的·不同来设置  求地址(到底是前台接口还是后台接口

下载一个插件用于 zip的解压

yum install -y unzip

通过 unzip blog.zip 解压问

其中 root 配置 dist所在的目录 

                               

	location  ^~/api/ {
		#^~/api/表示匹配前缀是api的请求,proxy_pass的结尾有/, 则会把/api/*后面的路径直接拼接到后面,即移除api
		proxy_pass http://tomcat_list/;
	}


然后通过

#1.C:\Windows\System32\drivers\etc\hosts中增加映射关系
ip + www.zking.com  即可

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

默o。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值