Ngnix学习笔记(第一天Ngnix介绍)

什么是Nginx?
Nginx是俄罗斯人塞索耶夫编写的一款高性能的HTTP和反向代理的服务器。

特性:

  • 作为web容器
  • 相对apache来说,更少的资源可以支持更多的并发连接。
  • 作为负载均衡服务器
  • 作为邮件代理服务器
  • 跨平台
    Nginx 可以在大多数 Unix like OS编译运行,而且也有Windows的移植版本。

  • 配置异常简单
    非常容易上手。配置风格跟程序开发一样,神一般的配置。

  • 非阻塞、高并发连接
    数据复制时,磁盘I/O的第一阶段是非阻塞的。官方测试能够支撑5万并发连接,在实际生产环境中跑到2~3万并发连接数.(这得益于Nginx使用了最新的epoll模型)。

  • 事件驱动
    通信机制采用epoll模型,支持更大的并发连接。

  • master/worker结构
    一个master进程,生成一个或多个worker进程。

  • 内存消耗小
    处理大并发的请求内存消耗非常小。在3万并发连接下,开启的10个Nginx 进程才消耗150M内存(15M*10=150M) 成本低廉:Nginx为开源软件,可以免费使用。而购买F5 BIG-IP、NetScaler等硬件负载均衡交换机则需要十多万至几十万人民币。

  • 内置的健康检查功能
    如果 Nginx Proxy 后端的某台 Web 服务器宕机了,不会影响前端访问。

  • 节省带宽
    支持 GZIP 压缩,可以添加浏览器本地缓存的 Header 头。

  • 稳定性高
    用于反向代理,宕机的概率微乎其微。

nginx代理和后端web服务器间无需长连接;

接收用户请求是异步的,即先将用户请求全部接收下来,再一次性发送后后端web服务器,极大的减轻后端web服务器的压力;

发送响应报文时,是边接收来自后端web服务器的数据,边发送给客户端的;

网络依赖型低。NGINX对网络的依赖程度非常低,理论上讲,只要能够ping通就可以实施负载均衡,而且可以有效区分内网和外网流量;

支持服务器检测。NGINX能够根据应用服务器处理页面返回的状态码、超时信息等检测服务器是否出现故障,并及时返回错误的请求重新提交到其它节点上。

安装配置
1. 准备好nginx-1.10.3.tar.gz 安装包
2. 连接服务器,上传安装包到/root 目录下(文件位置随意)
3. 新建 nginx 目录

#gcc : C/c++编译用的 
#yum -y install gcc gcc-c++ autoconf automake

#zlib : Nginx提供gzip模块,需要zlib库的支持 
#yum -y install zlib zlib-devel openssl openssl-devel pcre-devel
mkdir /usr/local/nginx

这里写图片描述

cd /usr/local/nginx
cp nginx-1.10.3.tar.gz ./
tar -zxvf nginx-1.10.3.tar.gz

解压后会显示:
这里写图片描述
进入文件夹下:

# cd nginx-1.10.3 
#./configure --help    #杳看nginx的模块

//接下来新建一个用户组和用户
#groupadd -r nginx
#useradd -g nginx -r nginx
#useradd -s /sbin/nologin -g nginx -r nginx   #免登录

#id nginx   #查看用户组id 用户id

//接下来配置模块
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module

完成以上以后就可以安装了,出现以下图所示的就代表安装好了。

#make&make install

这里写图片描述

启动服务:

#进入/usr/local/nginx/sbin
# ./nginx                   #启动
# ps aux |grep nginx        #查看nginx进程,是否正常启动

大家还可以配置环境变量,更加方便(当然不配也可以)
在/etc/profile 中加入:
export NGINX_HOME=/usr/local/nginx
export PATH= P A T H : NGINX_HOME/sbin
保存,
执行 source /etc/profile ,使配置文件生效。

有时候会出现端口占用的问题,因为nginx 默认是80端口,所以很容易和tomcat启动冲突,所以我们可以修改nginx的默认端口,比如8088
这里写图片描述

#vim nginx.conf  
#找到listen 80 修改为8088

这次我们可以访问 http://ip:8088 出现一下页面就代表可以了
这里写图片描述

猜你喜欢

转载自blog.csdn.net/weixin_38008100/article/details/82630044