zl程序教程

您现在的位置是:首页 >  工具

当前栏目

开发漫谈:BAT都在用的Nginx到底是啥?

Nginx开发 到底 bat 漫谈
2023-09-11 14:19:44 时间

如果你混迹IT圈儿,你可能听说过,或见过Nginx,IT技术人员对她都会有所耳闻,云计算工程师因为要应对负载均衡问题,需要更深入的了解Nginx,而Nginx也是百度、阿里、腾讯等企业IT架构中的常客。今天,笔者就与大家一起来探究一下,Nginx究竟是什么。

Nginx是什么?

根据维基百科的定义,Nginx(发音同engine x)是一个网页服务器,它能反向代理HTTP,HTTPS,SMTP,POP和IMAP的协议链接,以及一个负载均衡器和一个HTTP缓存。

其初始版本发于12年前(2004年10月4日),起初只是供俄罗斯大型门户网站及搜索引擎Rambler(Рамблер)使用,后再2011年俄罗斯Nginx公司获得300万美元风投,也在国内外获得了大量的追随者,国内的BAT、新浪、搜狐都有应用,国外的Facebook、TechCrunch、Groupon和WordPress等公司,也是Nginx的簇拥。

此软件BSD-like协议下发行,可以在UNIX、GNU/Linux、BSD、Mac OS X、Solaris,以及Microsoft Windows等操作系统中均可运行。技术创始人为为Igor Sysoev。

特性如何

Nginx之所以能够受到世界各大互联网公司的青睐,当然是基于前面提过的在BSD-like协议下发行,更重要的还是Nginx拥有高性能的特点,主要体现在占用内存少,稳定性高等方面。

正因为这个特点,Nginx在四年前,就被某宝内部系统广泛使用。同时Nginx在处理并发服务能力方面十分优异,整体采用模块化设计,在处理负载均衡方面有着出色表现。根据Nginx的官方测试结果显示,Nginx可以支持五万个平行链接,而在实际运作中,可以支持2万至4万个平行链接。

架构如何

Nginx高性能的特点很大原因要归功于Nginx的架构与设计方式。当我们启动Nginx之后,会出现一个Master进程和多个Wocker进程,Master进程主要用来管理Wocker进程,放Wocker进程异常退出后,会自动重新启动新的Wocker进程。多个Wocker进程之间是对等的,同时也是相互独立的。

开发漫谈:BAT都在用的Nginx到底是啥?

另外,Nginx使用了最新的epoll和kqueue网络IO模型,这种模型在高并发的情况下,时间模型能够有更高的效率。与多线程相比,这种事件处理方式优势明显,能够不需要创建线程,每个请求占用的内存也很少,没有上下文切换,事件处理十分轻量级。

结束语

五年前,Nginx技术创始人做了家公司,冲击了微软IIS(互联网信息服务器Internet Information Server),如今,互联网在快速发展中,高并发、高负载情况愈加平常,Nginx依然焕发着自己的活力。

如果你混迹IT圈儿,你可能听说过,或见过Nginx,IT技术人员对她都会有所耳闻,云计算工程师因为要应对负载均衡问题,需要更深入的了解Nginx,而Nginx也是百度、阿里、腾讯等企业IT架构中的常客。今天,笔者就与大家一起来探究一下,Nginx究竟是什么。

本文转自d1net(转载)


写给Java开发看的 Docker 干货(零基础部署Nginx MySQL SpringBoot) Docker是当下使用最多的一种容器技术,想精通Docker并不容易,在公司生产中会有专门的运维人员负责。但是身为开发人员 ,适当的学习Docker是必要的。Docker的好处这里就不介绍了,网上一搜一大堆。 本篇将用最简短的篇幅介绍开发人员需要学习的Docker干货,你将学习到
7.3【微信小程序全栈开发课程】小程序上线--nginx安装、SSL证书安装 1、安装nginx nginx是一个强大的http服务器,作用是解析链接信息,告诉服务器客户端需要做什么 比如nginx收到了链接信息http://localhost:8000/hello/index.html,就告诉服务器客户端的要求–获取目录hello/index.html文件。服务器读取文件内容发送给浏览器
一对一直播app开发通过Nginx实现数据安全 如果发生用户信息泄露,这对用户来说,是有很大的安全隐患的,就算数据不会泄露,平台被恶意攻击也会影响用户体验,所以不管在哪方面来说,保证一对一直播app开发的数据安全,应当是重点。