网站首页 > 技术教程 正文
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,国内使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。在连接高并发的情况下,Nginx是Apache服务不错的替代品,能够支持高达 50,000 个并发连接数的响应。
目前,根据W3Techs机构的统计数据显示,排名前三的Web服务器系统分别是Nginx(34.1%)、Apache(33.2%)和Cloudflare Server(18.7%)。排名第三的Cloudflare Server在这里值得关注,它来源Nginx。
Nginx以最快的Web服务器系统而声名鹊起,并且事实证明,可灵活扩展的底层架构非常适合除提供网站内容之外的众多Web任务。因为Nginx可以处理大量连接,通常用作反向代理和负载均衡系统,以管理进入网站的流量,并将这些流量分发到速度较慢的各服务器,从传统数据库服务器到微服务。
在web架构中的作用,nginx在web架构中最重要的有三个主要作用
- HTTP服务器,反向代理
- 负载均衡
- web缓存
1、Http代理+反向代理:作为web服务器最常用的功能之一,尤其是反向代理。对正向代理与反响代理架构解析如下图,具体细节,大家可以翻阅下资料。
Nginx做反向代理,提供性能稳定,并且能够提供配置灵活的转发能力。Nginx可以根据不同的正则匹配,采取不同的转发策略,比如图片文件结尾的走文件服务器,动态页面走web服务器,只要你正则写的ok的话,又有相对应的服务器解决方案,你就可以随心所欲的玩。并且Nginx对返回结果进行错误页跳转处理、异常判断等。如果被分发的服务器存在异常和损毁,它能够将请求重新转发给另外一台服务器,然后自动去除异常服务器,实现容错抗毁。
2、服务器负载均衡
Nginx提供的负载均衡策略有2种:内置策略和扩展策略。内置策略为轮询、加权轮询、IP hash。扩展策略,只有你想不到的没有他做不到的啦,你可以参照所有的负载均衡算法,给它找出来做下算法实现。如下图,理解三种负载均衡算法的实现
IP hash算法,对客户端请求的IP进行hash操作,然后根据hash结果将同一个客户端ip的请求分发给同一台服务器进行处理,能够完全解决session不共享的问题。
3、web缓存
Nginx能够根据不同的文件做不同的缓存处理,配置灵活,并且支持FastCGI_Cache,重点用于对FastCGI的动态程序进行缓存处理。配合着第三方的ngx_cache_purge,对制定的URL缓存内容可以的进行增删管理。
最近几年 Nginx 已成为国内使用最广泛的 Web 服务器,无论创业公司还是成熟大公司都在用,任何有性能需求的场合总能看到它的身影。在 OpenResty 等第三方模块群的发展下,Nginx 进一步向应用防火墙、CDN 等领域扩展,甚至渗透到 LVS 领域与 F5 这样的硬件产品竞争。
从技术上来说,Nginx 是见过的扩展性、模块化、异步写得最漂亮的软件,可以在百万、千万级并发连接下,实现高吞吐量 Web 服务。而且,牛逼的软件架构使得 Nginx 无需重构,其生态圈内的第三方模块是长期有效的,让我们不用重复造轮子,可以“站在巨人的肩膀上”。
如果想让产品支持高并发请求的同时,保持高效服务,Nginx 就是非常正确的选择。掌握了它,就等于手握应对高并发以及海量数据处理的大宝剑。
猜你喜欢
- 2024-10-11 阿里的这份支持千万级并发Nginx Web服务器详解PDF也有人说不行?
- 2024-10-11 Nginx配置多个网站/项目的简单方式
- 2024-10-11 学会Nginx,跟着腾讯大牛走,一套整理的核心NginxPDF文档奉上!
- 2024-10-11 程序员和产品经理必收藏的工具网站 在线工具方便工作 收藏备用
- 2024-10-11 Welcome to nginx!(Welcome to nginx!1)
- 2024-10-11 看完这篇Nginx官方文档,相信你一定彻底搞懂Nginx了(建议收藏)
- 2024-09-21 想学习Nginx,看阿里P8架构师精心整理的一套的Nginx(PDF文档)
- 2024-09-21 Nginx高性能web服务器详细讲解(nginx实现高性能用到的关键技术)
- 2024-09-21 周六福利!分享一本Nginx高性能Web服务器实战教程
- 2024-09-21 Linux Nginx网站服务——2(linux nginx部署web项目)
你 发表评论:
欢迎- 08-06linux 和 windows文件格式互相转换
- 08-06谷歌 ChromeOS 已支持 7z、iso、tar 文件格式
- 08-06Linux下比较文件内容的6种方法
- 08-06文件格式及功能汇总
- 08-0610个Linux文件内容查看命令的实用示例
- 08-06Linux-如何区分不同文件类型
- 08-06Zabbix技术分享——监控windows进程资源使用情况
- 08-06Linux系统卡顿?学会ps命令这三招,轻松定位问题进程
- 最近发表
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)