Day02_02_Nginx教程之Nginx简介

Nginx简介

一.Nginx简介

1. Nginx是什么?

Nginx(engine x)是一个高性能的HTTP反向代理服务器,也是一个IMAP/POP3/SMTP服务器.

Nginx是由伊戈尔·赛索耶夫用C语言为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。

其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。于2011年6月1日,Nginx 1.0.4发布。

Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行,其特点是占有内存少,并发能力强.

事实上Nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用Nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等.
Nginx官方提供的测试性能能够达到5W的并发,实际测试差不多是2W,而淘宝的牛人可以优化到200W.

Nginx解决了服务器的C10K(就是在一秒之内连接客户端的数目为10k即1万)问题.
它的设计不像传统的服务器那样使用线程来处理请求,而是一个更加高级的机制—事件驱动机制,是一种异步事件驱动结构.

2. 什么是 C10K 问题?

在 1999 年,Dan Kegel向网络服务器提出了一个骇人听闻的难题:
是时候让网络服务器去同时应对 10000 个客户端了,你觉得呢?毕竟网络已经变得很普及了。

这就是著名的 C10K 问题。

通过改善操作系统内核和从像Apache那样的线程服务器迁移到像Nginx或者Node这样的事件驱动服务器,工程师们解决了这个 C10K 问题。

但现在我们面临着一个更大的挑战,如果同时应对一千万个连接呢?要解决这个难题,那就需要些更变革的技术.

3. Nginx的特点:

1️⃣.跨平台:可以在大多数Unix like系统编译运行,而且也有Windows的移植版本;

2️⃣.配置异常简单:非常的简单,易上手;

3️⃣.非阻塞、高并发连接:数据复制时,磁盘I/O的第一阶段是非阻塞的。官方测试能支持5万并发连接,实际生产中能跑2~3万并发连接数(得益于Nginx采用了最新的epoll事件处理模型(消息队列)。

4️⃣.Nginx代理和后端Web服务器间无需长连接; 

5️⃣.Nginx接收用户请求是异步的:即先将用户请求全部接收下来,再一次性发送到后端Web服务器,极大减轻后端Web服务器的压力。 

6️⃣.发送响应报文时,则是一边接收来自后端Web服务器的数据,一边发送给客户端。 

7️⃣.网络依赖性低:理论上只要能够ping通就可以实施负载均衡,而且可以有效区分内网、外网流量。 

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

9️⃣.采用Master/Worker多进程工作模式;

?.内存消耗小、成本低廉(比F5硬件负载均衡器廉价太多)、节省带宽、稳定性高 等特点。

4. Nginx基本功能:

Nginx的功能包括基本的HTTP功能和扩展功能。
和Apache服务器一样,Nginx服务器为了提供更多的功能并且能够有效地扩展这些功能。每一个模块都提供了一个功能,通过编译这些功能模块来实现功能的扩展.

1️⃣.提供静态文件和index文件,处理静态文件,索引文件以及自动索引,打开文件 描述符缓存;

2️⃣.使用缓存加速反向代理,反向代理加速(无缓存),简单的负载均衡和容错;

3️⃣.使用缓存机制加速远程FastCGI,简单的负载均衡和容错;

4️⃣.模块化的结构。过滤器包括gzipping,byte ranges,chunked responses,以及 SSI-filter。在SSI过滤器中,到同一个 proxy 或者 FastCGI 的多个子请求并发 处理;

5️⃣.支持SSL 和 TLS SNI 支持;

6️⃣.IMAP/POP3代理服务功能;

7️⃣.使用外部 HTTP 认证服务器重定向用户到 IMAP/POP3 后端;

8️⃣.使用外部 HTTP 认证服务器认证用户后连接重定向到内部的 SMTP 后端;

9️⃣.基于名称和基于IP的虚拟服务器;

?.支持Keep-alive和管道连接;

<11>.灵活的配置和重新配置、在线升级的时候不用中断客户访问的处理;

<12>.访问日志的格式,缓存日志写入和快速日志轮循;

<13>.3xx-5xx错误代码重定向;

<14>.进行速度限制.

下图是Nginx的内部进程模型:

5. Nginx的应用场景有哪些?

1️⃣. http服务器:Nginx是一个http服务可以独立提供http服务,可以做网页静态服务,你可以放一些静态资源,比如HTML, JS, CSS, 图片;

2️⃣.虚拟主机:可以实现在一台服务器虚拟出多个网站,同时使用80端口;

3️⃣.反向代理,负载均衡:当网站的访问量达到一定程度后,单台服务器不能满足用户的请求时,这时需要用多台服务器集群可以使用nginx做反向代理。并且多台服务器可以平均分担负载,不会因为某台服务器负载过高而宕机,也不会出现某台服务器闲置的情况。

6. 什么是负载均衡

负载均衡建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。

负载均衡,英文名称为 Load Balance,其意思就是分摊到多个操作单元上进行执行,例如 Web 服务器、FTP 服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。
 

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 、4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、下载 4使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、 4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.m或d论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 、1资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
Nginx 0day是指Nginx的一个零日漏洞,其中涉及到了Nginx的LDAP-auth守护程序。该漏洞的影响范围是Nginx版本18.1。根据AgainstTheWest的GitHub存储库,该漏洞主要与Nginx中的LDAP-auth守护程序有关,该守护程序与Nginx一起使用,用于访问私有的GitHub、Bitbucket、Jenkins和Gitlab实例。虽然该漏洞在4月11日时已被公开,并且Nginx已发布了一篇博客来描述这个漏洞,但需要注意的是,该漏洞只影响Nginx的LDAP参考实现,而不影响Nginx的开源和Nginx Plus版本。如果您没有使用LDAP参考实现,那么您无需采取任何措施。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [关于 Nginx 0day 漏洞,需要采取哪些措施?](https://blog.csdn.net/ll837448792/article/details/126105462)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [NGINX 0 DAY LDAP RCE 漏洞来龙去脉](https://blog.csdn.net/u012516914/article/details/126080132)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一一哥Sun

您的鼓励是我继续创作的动力哦

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值