Nginx 解决了服务器的C10K(就是在一秒之内连接客户端的数目为10k即1万)问题。 Nginx的设计不像传统的服务器那样使用线程处理请求,而是一个更加高级的机制—事件驱动机制,是一种异步事件驱动结构。
虽然目前Nginx的份额在市场上只占很少部分,但是其高性能和低消耗内存的结构,使得其越来越普遍,典型的一个应用就是我们可以使用Nginx作为反向代理进行网站的负载均衡器。例如:Wordpress、GitHub等知名的网站都使用到了Nginx。
Nginx的特点
跨平台:可以在大多数Unix like 系统编译运行。而且也有Windows的移植版本。
配置异常简单:非常的简单,易上手。
非阻塞、高并发连接:数据复制时,磁盘I/O的第一阶段是非阻塞的。官方测试能支持5万并发连接,实际生产中能跑2~3万并发连接数(得益于Nginx采用了最新的epoll事件处理模型(消息队列)。
Nginx代理和后端Web服务器间无需长连接;
Nginx接收用户请求是异步的,即先将用户请求全部接收下来,再一次性发送到后端Web服务器,极大减轻后端Web服务器的压力。
发送响应报文时,是边接收来自后端Web服务器的数据,边发送给客户端。
网络依赖性低,理论上只要能够ping通就可以实施负载均衡,而且可以有效区分内网、外网流量。
支持内置服务器检测。Nginx能够根据应用服务器处理页面返回的状态码、超时信息等检测服务器是否出现故障,并及时返回错误的请求重新提交到其它节点上。
采用Master/worker多进程工作模式
此外还有内存消耗小、成本低廉(比F5硬件负载均衡器廉价太多)、节省带宽、稳定性高等特点。
Nginx的基本功能
Nginx的功能包括基本HTTP功能和扩展功能。和Apache服务器一样,Nginx服务器为了提供更多的功能并且能够有效地扩展这些功能。每一个模块都提供了一个功能,通过编译这些功能模块来实现功能的扩展。
1、基本HTTP功能
(a)提供静态文件和index文件,处理静态文件,索引文件以及自动索引,打开文件描述符缓存;
(b)使用缓存加速反向代理,反向代理加速(无缓存),简单的负载均衡和容错;
(c)使用缓存机制加速远程FastCGI,简单的负载均衡和容错;
(d)模块化的结构。过滤器包括gzipping,byte ranges,chunked responses,以及 SSI-filter。在SSI过滤器中,到同一个 proxy 或者 FastCGI 的多个子请求并发处理;
(e)支持SSL 和 TLS SNI 支持;
(f)IMAP/POP3代理功能;
(g)使用外部 HTTP 认证服务器重定向用户到 IMAP/POP3 后端;
(h)使用外部 HTTP 认证服务器认证用户后连接重定向到内部的 SMTP 后端;
2、其他HTTP功能
(a)基于名称和基于IP的虚拟服务器;
(b)支持Keep-alive和管道连接;
(c)灵活的配置和重新配置、在线升级的时候不用中断客户访问的处理;
(d)访问日志的格式,缓存日志写入和快速日志轮循;
(e)3xx-5xx错误代码重定向;
(f)速度限制。
Nginx的基本模块
Nginx的核心模块包括内核模块和事件驱动模块,即:CoreModule和EventsModule;另外还有第三方模块 HTTP内核模块,HttpCoreModule,它是Nginx服务器的核心模块。
CoreModule和EventsModule模块的配置相对于HttpCoreModule会少一些,但是它们的配置将会影响系统的性能,而非功能上的差异。
1、CoreModule用于控制Nginx服务器的基本功能;
2、EventsModule用于控制Nginx如何处理连接。该模块的指令的一些参数会对应用系统的性能产生重要的影响;
3、HttpCoreModule提供HTTP访问Nginx服务器,该模块是不能缺少的。
Nginx配置安装的环境
1、yum -y install gcc* epel-release curl curl-devel mcrypt openssl openssl-devel gd gd-devel freetype freetype-devel zlib zlib-devel zip libmcrypt-devel libmcrypt pcre-devel libevent-devel ncurses-devel libxml2* mcrypt* libmcrypt* cmake gcc* lrzsz ntp telnet
2、创建用户
useradd -s /sbin/nologin web
3、创建nginx的安装目录(此步骤可以省略)
mkdir -p /usr/local/nginx
chown -r web:web /usr/local/nginx
4、拷贝下载好的软件包到/usr/src/目录
5、解压Nginx安装包
tar -zxf /usr/src/tengine-2.1.2.tar.gz
cd /usr/local/tengine-2.1.2/
6、进行检测
./configure --prefix=/usr/local/nginx --with-http_sub_module --with-http_gzip_static_module --with-http_stub_status_module --with-pcre
7、编译
make
8、安装
make install
9、启动nginx /usr/local/nginx/sbin/nginx
更新日志
Nginx 1.7.7 发布了,下载地址:
改进记录包括:
*) Change: now nginx takes into account the “Vary” header line in a
backend response while caching.
*) Feature: the “proxy_force_ranges”, “fastcgi_force_ranges”,
“scgi_force_ranges”, and “uwsgi_force_ranges” directives.
*) Feature: the “proxy_limit_rate”, “fastcgi_limit_rate”,
“scgi_limit_rate”, and “uwsgi_limit_rate” directives.
*) Feature: the “Vary” parameter of the “proxy_ignore_headers”,
“fastcgi_ignore_headers”, “scgi_ignore_headers”, and
“uwsgi_ignore_headers” directives.
*) Bugfix: the last part of a response received from a backend with
unbufferred proxy might not be sent to a client if “gzip” or “gunzip”
directives were used.
*) Bugfix: in the “proxy_cache_revalidate” directive.
Thanks to Piotr Sikora.
*) Bugfix: in error handling.
Thanks to Yichun Zhang and Daniil Bondarev.
*) Bugfix: in the “proxy_next_upstream_tries” and
“proxy_next_upstream_timeout” directives.
Thanks to Feng Gu.
*) Bugfix: nginx/Windows could not be built with MinGW-w64 gcc.
Thanks to Kouhei Sutou.
web服务器Nginx发布1.6.2。2014-09-16。上个版本2014-08-05的1.6.1 遗留稳定版1.4.7/1.2.9/1.0.15.开发版1.7.5 修正了一个SSL相关的安全漏洞(CVE-2014-3616),以及两个DNS可能导致请求挂起Bug(1.5.8引入)。
nginx开发团队还同步发布了nginx 1.7.0主线版本,新特性如下:
后端SSL证书验证
当使用SSL后端时,支持SNI(服务器名称标识符)
FTP 工具
FTP 工具
FTP 工具
FTP 工具
FTP 工具
FTP 工具
Effie是一款操作便捷的写作软件,简洁直观的界面设计,人人都能轻松上手操作。Effie提供了写作、思维导图、大纲、AI助手等多项实用功能,全面覆盖用户的写作需求,且内置资源库,方便用户管理文...
万彩动画大师是一款简单好用的动画视频制作软件,提供丰富的功能,让用户可以轻松打造企业宣传片、动画片、产品介绍短片等多种视频内容。万彩动画大师提供了众多精美的动画模板和海量素材,供用...
淘宝直播最新电脑版是一款非常好用的直播工具,是淘宝主播的必备之选。在淘宝直播最新电脑版支持主播与观众随时轻松互动,展示商品、回答问题等。此外,该软件还支持多种美颜、滤镜和音效功能,...
哔哩哔哩直播姬是一款简单易用的直播辅助软件,用户只要拥有哔哩哔哩弹幕网会员,就能轻松登录会员快速开启直播。哔哩哔哩直播姬内置弹幕回复、礼物打赏等互动功能,满足主播的不同直播互动需求...
酷呆桌面(Coodesker)提供了极为实用的桌面整理功能,助力用户轻松美化、整理桌面图标。酷呆桌面(Coodesker)支持应用启动器、文档归类等功能,让电脑桌面变得更加整洁,提高办事的效率。同时,该...
向日葵远程控制软件最新版操作简单便捷,用户一键点击就能发起或接受远程控制,随时畅享安全、顺畅的远程体验。向日葵远程控制软件最新版支持远程控制电脑、视频监控、桌面录像、远程文件、远程...
发表评论
共0条
评论就这些咯,让大家也知道你的独特见解
立即评论以上留言仅代表用户个人观点,不代表系统之家立场