Nginx服务器(engine-X),是一种web服务器。它是一种开源的高性能HTTP和反向代理服务器。 它也可提供IMAP/POP3/SMTP代理服务等功能。 ( 推荐学习:nginx使用 )
**Nginx是以多进程的方式来工作的。**也支持多线程的方式,只是主流的方式还是多进程的方式,也是Nginx的默认方式。
Nginx启动后,它在Unix系统中会以daemon的方式在后台运行,后台进程包含一个master进程和多个worker进程。
master进程主要用来管理worker进程,包含:接收来自外界的信号,向各worker进程发送信号,监控worker进程的运行状态,当worker进程退出后(异常情况下),会自动重新启动新的worker进程。
而基本的网络事件,则是放在worker进程中来处理了。多个worker进程之间是对等的,他们同等竞争来自客户端的请求,各进程互相之间是独立的。
一个请求,只可能在一个worker进程中处理,一个worker进程,不可能处理其它进程的请求。worker进程的个数是可以设置的,一般我们会设置与机器cpu核数一致。
优点
高并发连接
官方测试能支撑5万并发连接,在实际生产环境中跑到2~3万并发连接数。Nginx服务器专为性能优化而开发。它支持内核Poll模型,能经受高负载的考验。
内存消耗少
Nginx服务器采取了分阶段资源分配技术,这使得它的CPU与内存占用率非常低。
配置文件简单
成本低 : Nginx服务器是开源软件。
支持Rewrite重写规则
能根据域名、URL的不同,将 HTTP 请求分到不同的后端服务器群组。
内置的健康检查功能.
若 Nginx服务器 Proxy 后端的某台 Web 服务器宕机,不会影响前端访问。
节省带宽.
支持 GZIP 压缩,可以添加浏览器本地缓存的 Header 头。
稳定性高.
Nginx服务器的稳定性很高。其它HTTP服务器在遇到访问峰值,或有人恶意发起慢速连接时,很可能会导致服务器物理内存耗尽,频繁交换,失去响应(只能重启服务器)。
另外, Nginx服务器采用master-slave模型,能充分利用SMP的优势,且能减少工作进程在磁盘I/O的阻塞延迟。
Nginx服务器代码质量很高,很规范, 模块扩展也很容易。Nginx服务器采用了一些os提供的最新特性如对sendfile (Linux2.2+),accept-filter(FreeBSD4.1+),TCP_DEFER_ACCEPT (Linux 2.4+)的支持,从而大大提高了性能。
以上是使用nginx有什么优点的详细内容。更多信息请关注PHP中文网其他相关文章!