Nginx:简介、安装与部署

一、Nginx简介

        Nginx是一个很好的高性能Web和反向大力服务器,它具有很多非常优越的特性:在高连接并发的情况下,Nginx是Apahe服务器的不错的替代品:Nginx在美国是虚拟主机生意选择的软件平台之一。能够支持50000个并发连接数的响应,Nginx选择了Epoll and kqueue作为开发模型。

        Nginx作为负载据衡服务器:Nginx既可以在内部直接支持也可以直接对外进行服务,也可以支持作为HTTP代理服务器对外进行服务。Ngxinx采用C语言编写,不论是系统资源开销还是CPIU使用效率都比Perlbal(事务处理模型)要好很多。

二、Nginx特性

模块化设计:较好的扩展性:支持众多的模块,和第三方模块

高可靠:主控进程(Master)负责解析配置文件、启动和Socke、生成多个工作线程(Work),工作线程来接收、处理用户请求;【Master --> Work】

低内存消耗:1000个Keeep-alive模式下的connection,仅需要2.5MB内存

支持热部署:不停机而更新配置文件、日志文件滚动、升级程序版本

支持 时间驱动:支持AIO、mmap等性能优化

高并发连接:官方测试能够支撑5万并发连接数,在实际生产环境中跑到2~3万并发连接

三、Ngxin基本功能

  •   静态资源的web服务器,能缓存打开的文件 描述符
  •   http, smtp, pop3协议的反向代理服务器,缓存、负载均衡;
  •  支持FastCGI (fpm)
  •   模块化,非DSO机制,过滤器zip,SSI及图像大小调整;
  •   支持SSL

四、扩展功能

  • 基于名称和IP的虚拟主机;
  • 支持keepalive
  • 支持平滑升级
  • 定制访问日志 ,支持使用日志缓冲区提高日志存储性能
  • 支持url rewrite
  • 支持路径别名
  • 支持基于IP及用户的访问控制
  • 支持速率限制,支持并发数限制

五、Nginx基本架构


nginx: 非阻塞、事件驱动、一个master生成一个或多个worker, 每个worker响应n个(worker * n)请求;

支持基于事件驱动: epoll(边缘触发)、kqueue、/dev/poll;

  • Epoll:主要是在Linxu上使用
  • Kqueue:主要是在BSD Unix上使用
  • /dev/poll:主要是在solaris Unix上使用

支持IO复用器支持:Select、Poll、Rt Signal

支持sendfile(默认发送很小不会超过KB), sendfile64(可以支持更大的)

  •   IO调用
  • 支持SendFile之后

支持AIO
支持MMAP

六、Nginx安装
 

1、安装环境

需要gcc系统自带了,没有自带的需要先安装:yum install gcc-c++
需要安装pcre:yum install pcre*
需要安装zlib:yum install zlib zlib-devel
如果需要支持ssl的话,需要安装Open SSL:安装命令:yum -y install  zlib zlib-devel   openssl openssl-deve

2、下载源码包地址

下载源码包地址:https://nginx.org/en/download.html

3、解压编译安装

解压:tar -xvf nginx-1.23.0.tar.zip
编译安装:./configure --prefix=/app/nginx --user=nginx --group=nginx --with-http_ssl_module --with-http_realip_module --with-http_flv_module --with-http_image_filter_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_stub_status_module --error-log-path=/data/logs/nginx/error.log --http-log-path=/data/logs/nginx/access.log & make & make install 

4、访问端口

七、Nginx常见的编译模块

./configure --help #查看可以是编译的模块

--with-http:开启某个模块
--without-http:默认启用关闭的使用without

八、启动命令

测试配置文件:./nginx/sbin/nginx -t
启动:
./nginx/sbin/nginx

停止:./nginx/sbin/nginx -s stop 或者nginx -s quit

重启:./nginx/sbin/nginx  -s reload

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值