nginx随记1

2 篇文章 0 订阅

1、Nginx是什么

Nginx ("engine x") 是一个高性能的 HTTP反向代理服务器,也是一个IMAP/POP3/SMTP 服务器。Nginx是由Igor Sysoev为 俄罗斯访问量第二的Rambler.ru站点开发的,第一个公开版本0.1.0发布于2004年10月4日。其将 源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而 闻名。2011年6月1日,nginx 1.0.4发布。
Nginx是一款 轻量级Web 服务器/ 反向代理服务器及 电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。由俄罗斯的程序设计师Igor Sysoev所开发,供俄国大型的入口网站及搜索引擎Rambler(俄文:Рамблер)使用。其特点是占有内存少, 并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有: 京东新浪网易腾讯淘宝等。
 
Nginx 是一个很强大的高性能 Web反向代理服务器,它具有很多非常优越的特性:
在高连接并发的情况下,Nginx是 Apache服务器不错的替代品:Nginx在美国是做虚拟主机生意的老板们经常选择的软件平台之一。能够支持高达 50,000 个并发连接数的响应。
 
服务器
Nginx作为 负载均衡服务器:Nginx 既可以在内部直接支持 Rails 和 PHP 程序对外进行服务,也可以支持作为 HTTP 代理服务器对外进行服务。Nginx采用C进行编写,不论是系统资源开销还是CPU使用效率都比 Perlbal 要好很多。

nginx代码

Nginx代码完全用 C语言从头写成,已经移植到许多体系结构和 操作系统,包括: LinuxFreeBSDSolarisMac OS XAIX以及 Microsoft Windows。Nginx有自己的函数库,并且除了 zlibPCREOpenSSL之外,标准模块只使用系统C 库函数。而且,如果不需要或者考虑到潜在的授权冲突,可以不使用这些第三方库。

nginx代理服务器

作为邮件 代理服务器:Nginx 同时也是一个非常优秀的邮件 代理服务器(最早开发这个产品的目的之一也是作为邮件代理服务器),Last.fm 描述了成功并且美妙的使用经验。
Nginx 是一个安装非常的简单、配置文件非常简洁(还能够支持perl语法)、 Bug非常少的服务器。Nginx 启动特别容易,并且几乎可以做到7*24不间断运行,即使运行数个月也不需要重新启动。你还能够不间断服务的情况下进行软件版本的 升级
 
 

2、Nginx之event、epoll及红黑树

a. nginx 源码学习笔记(二十)—— event 模块(一) ——初始化     http://blog.csdn.net/lengzijian/article/details/7598996

b. nginx 源码学习笔记(二十一)—— event 模块(二) ——事件驱动核心ngx_process_events_and_timers        http://blog.csdn.net/lengzijian/article/details/7601730

c.nginx 源码学习笔记(二十二)—— event 模块(三) ——epoll模块     http://blog.csdn.net/lengzijian/article/details/7608365

 讲述的是nginx如何使用epoll完成时间驱动,实现高并发

 

d. nginx 源码学习笔记(二十三)—— event 模块(四) ——timer红黑树  http://blog.csdn.net/lengzijian/article/details/7609388

nginx中,当前所有可能被触发的定时器被保存在红黑树这种数据结构中,通过红黑树,你可以很快的得到距离当前最快发生的定时器时间的时间差,将这个时间差作为select/poll/epoll等函数的参数,也就是说最多等待这么长时间就返回。得到函数调用总共花费了多少时间,根据这个时间取出红黑树的根节点比较查看是否应该触发该定时器时间,如果可以,则将定时器从红黑树中删除,然后继续查看新的成为树根的定时器的节点,这个过程一直进行下去,知道没有定时器满足被触发条件,也就是还没有被触发的事件。


nginx中,新接收了一个连接,就会保存这个连接上来的时间,并且以这个时间来加入红黑树定时器。

 

 
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值