• 欢迎访问VPS岛网站,国外VPS,国内VPS,国外服务器,国内服务器,服务器主机,测评及优惠码,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站 QQ群

nginx学习笔记一 : IO模型及nginx

Nginx相关 shadow2017 105次浏览 已收录 0个评论

Nginx:
web服务器:http协议;
http协议:html, MIME(多用途互联网邮件扩展)
major/minor :
text/html, text/plain, image/jpeg,..
web资源:URL ( scheme://server: port/path/to/source)
http:80 https:443
方法 :GET, HEAD, POST,PUT,DELETE, TRACE, OPTIONS,…
WEBDAV
http事务:request<–>response
request:
<metchod><URL><version>

<body>
response :
<version><status><reason phrase>
<HEADERS>

<body>

status:
1xx : 信息类
2xx: 成功类,200
3xx: 重定向,301,302,304
4xx: 错误类,客户端错误,404,403
5xx: 错误类,服务器端错误,502
认证 : basic, digest

httpd: MPM
prefork, worker, event

I/O模型:
同步:synchronous,等待对方返回消息;
异步:asynchron
异步,被调用者通过消息、通知或回调
状态:调用者每隔一段时间就需要检查一次;
通知:
回调;

阻塞/非阻塞
关注调用者等待结果返回之前所处的状态;
阻塞:block,调用结果返回之前,调用者会被挂起;调用者返回之后才能唤醒
非阻塞:nonblock,调用结果返回之前,调用者不会被挂起;

/////////////////////////////////////////////////22222///////////////////////////////////////////////////////////
I/O:
网络IO:本质是socket读取数据流;
磁盘IO:流;

  每次IO,都会经由两个阶段;

        第一步:数据先加载至内核内存空间(缓冲区);
        第二部:数据从内核缓冲区复制到用户空间的进程的内存中去;
          等待数据准备完成;
        数据从内核复制到进程;

I/O模型:
同步阻塞:调用结果返回之前,调用者会被挂起;调用者返回之后才能唤醒
同步非阻塞 :nonblock,调用结果返回之前,调用者不会被挂起
IO multipexing: select ,poll
Signal Driven IO :
Asynchronous IO
IO调用过程:磁盘—–>内存内核空间———–>用户
nginx学习笔记一 : IO模型及nginx

Nginx :高性能的HTTP 网页服务器,反向代理,电子邮件POP3/IMAP代理服务器;
C10k, http://nginx.org/ 设计并发连接超过10000个的数量,高并发
engin X: nginx
二次开发版:tengine(淘宝二次开发), openresty
Nginx的特性:
模块化设计,较好的扩展性;
高可靠性
master/worker
支持热部署机制
不停机更新配置文件、更换日志文件、更新服务器程序版本;
低内存消耗
10000个keep-alive连接模式下的非活动连接仅消耗2.5M内存;
特性:event-driven,支持aio, 支持mmap

基本功能:
静态资源的web服务器;
http协议反向代理服务器;
pop3/imap4协议反向代理服务器;
FastCGI(lnmp),uWSGI等协议;
模块化(非DSO);著名有zip, SSL,…;

   web服务器相关的功能:
          虚拟主机、keepalive、访问日志、url rewrite、路径别名、基于ip及用户的访问控制、支付               
          速率限制及并发数限制,... ;

Nginx的程序架构:
master/worker
一个master进程,可生成一个或多个worker进程;就是一个进程响应多个请求;
master用途:加载配置文件、管理worker进程、平滑升级、……
worker用途 : http服务、http代理、fastcgi代理、…..

Nginx arch:
nginx学习笔记一 : IO模型及nginx


VPS岛 的文章和资源来自互联网,仅作为参考资料,如果有侵犯版权的资源请尽快联系站长,我们会在24h内删除有争议的资源。丨 转载请注明nginx学习笔记一 : IO模型及nginx
喜欢 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址