当初我要是这么学习Nginx就好了!(多图详解)
upstream 内部流程,如下图: 反向代理流程,如下图: Nginx 定制化模块开发 Nginx 的模块化设计特点如下: 高度抽象的模块接口 模块接口非常简单,具有很高的灵活性 配置模块的设计 核心模块接口的简单化 多层次、多类别的模块设计 内部核心模块: Handler 模块:接受来自客户端的请求并构建响应头和响应体。 Filter 模块:过滤(filter)模块是过滤响应头和内容的模块,可以对回复的头和内容进行处理。它的处理时间在获取回复内容之后,向用户发送响应之前。 Upstream 模块:使 Nginx 跨越单机的限制,完成网络数据的接收、处理和转发,纯异步的访问后端服务。 Load_Balance:负载均衡模块,实现特定的算法,在众多的后端服务器中,选择一个服务器出来作为某个请求的转发服务器。 ngx_lua 模块: 脚本语言 内存开销小 运行速度快 强大的 Lua 协程 非阻塞 业务逻辑以自然逻辑书写 定制化开发 Demo Handler 模块: 编写 config 文件 编写模块产生内容响应信息 #配置文件: server { ... location test { test_counter on; } } #config ngx_addon_name=ngx_http_test_module HTTP_MODULES="$HTTP_MODULES ngx_http_test_module" NGX_ADDON_SRCS="$NGX_ADDON_SRCS $ngx_addon_dir/ngx_http_test_module.c" #ngx_http_test_module.c static ngx_int_t ngx_http_test_handler(ngx_http_request_t *r) { (编辑:晋中站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |