Nginx模块开发与架构解析

发布时间:2021-09-17 20:37:08 作者:chen
来源:亿速云 阅读:139

本篇内容主要讲解“Nginx模块开发与架构解析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Nginx模块开发与架构解析”吧!

一、研究Nginx前的准备工作

1.Nginx特点:更快、高扩展性、高可靠性、低内存消耗、单机支持10万以上的并发连接、热部署、最自由的BSD许可协议

2.退出nginx

3.日志回滚:nginx -s reopen

二、Nginx的配置

A.运行中的Nginx进程间的关系

  1. 一般情况下,worker进程的数量与服务器上的CPU数量相等

B.Nginx服务的基本配置

1.用于调试进程和定位问题的配置项

2.正常运行的配置项

3.优化性能的配置

4.事件类配置项

C.用HTTP核心模块配置一个静态Web服务器

1.虚拟主机与请求的分发

2.文件路径的定义

3.内存及磁盘资源的分配

4.网络连接的设置

5.MIME类型的设置

6.对客户端请求的限制

7.文件操作的优化

8.对客户端请求的特殊处理

D.用HTTP proxy module配置一个反向代理服务器

1.负载均衡的基本配置

2.反向代理的基本配置

三、开发一个简单的HTTP模块

1.整型的封装:ngx_int_t、ngx_uint_t

2.字符串:ngx_str_t

3.链表容器:ngx_list_t

4.key/value对:ngx_table_elt_t

5.缓冲区:ngx_buf_t

6.与ngx_buf_t配合使用的链接结构:ngx_chain_t

四、配置、error日志和请求上下文

五、访问第三方服务

1.upstream可以保证在与第三方服务器交互时(包括三次握手建立TCP连接、发送请求、接收响应、四次握手关闭TCP连接等)不会阻塞Nginx进程处理其他请求

2.subrequest是分解复杂请求的一种设计模式,最终也是基于upstream实现的

3.当我们希望把第三方服务的内容几乎原封不动地返回给用户时,一般使用upstream方式,可以非常高效地透传HTTP;如果访问第三方服务只是为了获取某些信息,再依据这些信息来构造 响应并传送给客户,应该使用subrequest方式

到此,相信大家对“Nginx模块开发与架构解析”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

推荐阅读:
  1. Nginx 解析漏洞复现
  2. nginx监控及lnmp架构

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

nginx

上一篇:MySQL Mydumper的工作原理

下一篇:oracle cluster集群相关日志查看方法

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》