快速理解Nignx
目录
Nginx概述
Nginx是一个高性能的Http反向代理服务器,特点是占有内存少,并发能力强。并且Nignx专门为性能优化而开发,性能是其最重要的考量,实现上非常注重效率,能承受负载的考研,有报表表明能支持高达50,000个并发连接数。
Nginx的三个重要的概念:
- 反向代理
- 动静分离
- 负载均衡
接下来简单聊聊这三个概念
反向代理:
说反向代理之前先聊聊正向代理是什么
正向代理:
咱们要访问Google,现在是无法访问到的,因为被墙了。但我们可以通过代理去访问,由代理服务器访问到google,这就可以理解为一次正向代理,即客户端通过代理服务器访问目标服务器。
反向代理
这里的反向我理解为服务目标的相反,即我想要访问的www.claw.com:8099,是访问到反向代理服务器上的www.cba.com:80,真实目标服务器的IP就被隐藏了起来,暴露出来的是www.cba.com:80这个地址。
动静分离:
单一架构下的网站应用,通常把静态文件和动态文件放一块儿,比如js、css(静态)jsp、servlet(动态)。但这样的解析速度是不够高的,并且也给服务器带来了较大的压力,为了加快网站的解析速度,可以把动态页面和静态页面由不同的服务器来解析,降低单个服务器压力。
负载均衡 :
在单体应用架构中,要应对高并发,也许可以通过提高服务器配置来解决高并发带来的压力,但高并发带来的问题无法根本解决,仍然有可能在某一时刻带来的并发量超过服务器的承受导致服务器宕机,于是提高服务器的配置这条路无法走通了,便考虑通过集群来分担高并发下的压力。
Nginx通过反向代理,可以把请求均匀的发到不同的服务端,来分担服务器压力,这就是负载均衡。
Nginx在阿里云/Linux下的安装
一、安装编译工具及库文件
yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel
二、首先要安装 PCRE
PCRE 作用是让 Nginx 支持 Rewrite 功能,下载地址: http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz。
1、下载 PCRE 安装包
[root@clawsServer src]# cd /usr/local/src/
[root@clawsServer src]# wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz
2、解压安装包:
[root@clawsServer src]# tar zxvf pcre-8.35.tar.gz
3、进入安装包目录
[root@bogon src]# tar zxvf pcre-8.35.tar.gz
4、编译安装
[root@clawsServer pcre-8.35]# ./configure
[root@clawsServer pcre-8.35]# make && make install
5、查看pcre版本
[root@clawsServer pcre-8.35]# pcre-config --version
三、安装 Nginx
1、下载 Nginx,下载地址:http://nginx.org/download/nginx-1.6.2.tar.gz
[root@clawsServer src]# cd /usr/local/src/
[root@clawsServer src]# wget http://nginx.org/download/nginx-1.6.2.tar.gz
2、解压安装包
[root@clawsServer src]# tar zxvf nginx-1.6.2.tar.gz
3、进入安装包目录
[root@clawsServer src]# cd nginx-1.6.2
4、编译安装
[root@clawsServer nginx-1.6.2]# ./configure --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.35
[root@clawsServer nginx-1.6.2]# make
[root@clawsServer nginx-1.6.2]# make install
5、查看nginx版本
[root@clawsServer nginx-1.6.2]# /usr/local/webserver/nginx/sbin/nginx -v
6、启动nginx
[root@clawsServer conf]# /usr/local/webserver/nginx/sbin/nginx
nginx的默认监听端口是80,这一点写在配置文件中,先不说配置文件,可以先访问80端口看看,本地的Linux可能需要修改防火墙
如果是在阿里云安装部署的nginx,需要访问阿里云公网ip来访问,----》教你如何访问阿里云的Nginx(新手友好)