Nginx随记

本文介绍了Nginx的安装、使用及负载均衡方法。先利用VMware创建三个CentOS虚拟机,安装Nginx前需安装相关插件,解决安装命令报错问题。还介绍了Nginx的启动、停止、平滑重启操作,阐述了反向代理和负载均衡概念,列举了常用负载均衡方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Nginx 随记

第一步:可以利用VMWARE创建三个centos虚拟机。

第二步:一个虚拟作为Nginx服务器,另外两台虚拟机作为web服务器。

第三步:在安装Nginx之前,需要安装GCC编译器,以及autoconf和automake,这两个插件可以自动创建功能完善的makefile(在我们执行make之前,需要有一个名为makefile或Makefile的文件。这个文件用来告诉make需要完成什么样的操作。我们可以简单的把makefile认为是一份定义了源文件间依赖关系、如何编译各个源文件并生成可执行文件的说明书).

第四步:使用yum命令安装以上的插件,命令如下所是:

yum -y install gcc gcc-c++ autoconf automake :执行该条命令报如下的错误:Another app is currently holding the yum lock; waiting for it to exit… ,解决手段:

(一) 通过ps命令,找出使用yum的进程号 ps aux|grep yum
(二) kill -9 进程号
(三) 如果执行以上两步还不行的化,那么就使用该命令:rm -f /var/run/yum.pid

第五步:安在Nginx一些模块所依赖的包。命令如下:

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

第六步:在linux环境下在nginx安装包,安装步骤如下:

(一) 在/etc/yum.repos.d/ 目录下面,新建一个nginx.repo文件。
(二) 然后在文件种添加如下的内容:

name=nginx stable repo
baseurl=http://nginx.org/packages/centos/releasever/releasever/releasever/basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key

(三) sudo yum install nginx 开始下载nginx.

第六步:使用yum安装nginx后的目录路径如下所是:

nginx执行文件目录:/usr/sbin/nginx
配置文件路径:/etc/nginx/nginx.conf
nginx首页html网页路径:/usr/share/nginx/html
缓存对应的目录:/var/cache/nginx/fastcgi_temp
代理目录:/var/cache/nginx/proxy_temp
这是啥目录:/var/cache/nginx/scgi_temp
这是啥目录:/var/cache/nginx/uwsgi_temp
使用yum安装的nginx启动命令:/usr/sbin/nginx -c /etc/nginx/nginx.conf

第七步:关于nginx的启动,停止,平滑重启,如下所示:

(一) 启动:sudo systemctl start nginx.service 这是启动命令 , sudo systemctl start nginx.service 这是设置开启就启动nginx. 还有一张启动命令:直接使用输入nginx就启动了。nginx -t 命令可以测试是否启动成功。
(二)停止:从容的停止:kill -QUIT nginx的主进程号 ,快速的停止:kill -TERM nginx的主进程号或使用kill -INT nginx的主进程号,强制的停止:kill -9 nginx所有进程号。
(三)平滑的重启:在平滑的重启前需要确认nginx的配置文件是否正确:

[root@centos01 nginx]# cd /usr/sbin/
[root@centos01 sbin]# nginx -t -c /etc/nginx/nginx.conf
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

出现上面的情形,就表示正确,就可以使用kill -HUP nginx的主进程号。

第八步:负载均衡以及反向代理

反向代理:目前我的理解就是,客户机通过互联网上的web服务时,客户端所发起的请求经过互联网的传输不会直接给到web所在的服务器。而一般web所在的服务器都在内部网络,因此,一般服务的发布方,一般会使用一个代理服务器,该代理服务器上不存在web系统资源,系统资源存在于内部的服务器,代理服务器会接受互联网上的请求,然后再将该请求转发给内网某一台服务器来处理请求,最后将处理结果返回给代理服务器,由代理服务器返回将结果返回给客户端。

负载均衡:就是代理服务器怎么能将客户端的请求智能的分配给内网服务器来进行处理。为什么说智能,就是负载均衡算法,能够知道某一时刻,那台服务器的处理能力强,那一台服务器的处理能力弱。如果能智能的分发请求,那么就能就高效率,高性能的利用服务器。

第九步:常用的负载均衡的方法:

(一):比较传统的手工负载均衡:就是在某个网站的首页,设置很多入口连接,客户点击不同的入口,就有不同的服务器来影响客户的处理。这种负载均衡实现简单,但是其弊端就是:如果用户习惯型点击某一入口,这样就会导致其他入口无人问津,其他服务器资源就让费了。
(二):DNS轮询方式:DNS轮询的方式就是,就是一个域名对应了一个内网的ip地址池,当代理服务器,接受到了包含域名的请求方式,代理服务器会根据域名通过轮询的方式,将该请求分发给某一服务器来处理。这种DNS轮询的方式的优点:实现简单,好理解。缺点就很多了,假如在轮询的过程中,轮询到那个服务器宕机了,那么就导致所有的客户端得到及时回应,就类似服务挂掉了一样。其次就是轮询,可能会出现某一段时间,总是分配到同一个ip,导致其他服务器空闲。这样导致负载均衡不平衡的现象。
(三):四/七负载均衡设备:就是从影响层片区实现负载均衡,其中的四和七分别是只OSI模型中的第四层(网络传输层)和第七层(应用层)。这种实现的优点是:可以达到高性能,高可用,但缺点就是,价格昂贵。

(四):软件层面的四层均衡:LVS(LUNIX VIRTUAL SERVER)。LVS集群采用了ip负载均衡技术以及基于内容的分发技术。

(五):软件层面的七层均衡:Nginx ,Haproxy.

(六):多线多地区的智能DNS解析和混合负载均衡方式。

第十步:具体Nginx的反向代理和负载均衡策略

(一):在另外两台虚拟机上安装jdk1.8 tomcat服务器。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值