![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Nginx
文章平均质量分 85
菊头蝙蝠
这个作者很懒,什么都没留下…
展开
-
Nginx模块开发:handler模块实现
handler模块实现的模块功能共享内存和slab存储的数据结构实现handler模块ngx_http_pagecount_create_location_confngx_http_pagecount_setngx_http_pagecount_shm_initngx_http_pagecount_handler对红黑树的操作ngx_http_pagecount_init实现的模块功能实现功能:统计每个ip地址访问的次数,并显示相应的html。(这个功能有什么用呢?可以根据统计次数,可以后续做成一个黑白原创 2022-05-22 00:48:02 · 285 阅读 · 0 评论 -
Nginx源码阅读:共享内存ngx_shm_t和它的组织方式ngx_shm_zone_t、ngx_list_t
Nginx源码阅读:共享内存以及它的组织方式原创 2022-05-20 19:37:01 · 735 阅读 · 0 评论 -
Nginx源码阅读:ngx_list_t 链表
Nginx源码阅读:ngx_list_t 链表一、Nginx中链表(ngx_list_t)的结构图二、源码阅读1、`ngx_list_part_s`2、`ngx_list_t`3、`ngx_list_create`4、`ngx_list_init`5、`ngx_list_push`一、Nginx中链表(ngx_list_t)的结构图ngx_list_t作为一个链表的结构体,里面是一些链表的信息,ngx_list_part_t是链表的节点。ngx中的链表并不是将内存简单串起来,而是将内存组织成块(ch原创 2022-05-20 16:36:23 · 322 阅读 · 0 评论 -
Nginx源码阅读:ngx_palloc 内存池
Nginx源码阅读:ngx_palloc 内存池原创 2022-05-19 21:48:28 · 827 阅读 · 0 评论 -
Nginx模块开发:模块结构的源码阅读以及过滤器(Filter)模块的实现
这些公共的部分,可以在nginx内做成一个模块客户端可以在发送请求后,接受到html,以及md5,用来验证接受到的网页是否正确,也可以用模块来做在Nginx中有三种模块:两根红线(浏览器->Nginx->服务器):upstream模块两根绿线(服务器->Nginx->浏览器):Filter模块一根红先一根绿线(浏览器->Nginx->浏览器):handler模块比如说受到攻击,通过handler模块去处理。ngx_module_sstruct ngx.原创 2022-05-17 14:23:57 · 312 阅读 · 0 评论 -
Nginx源码阅读:nginx_shmtx共享互斥锁(进程锁)
初始化事件模块ngx_event_module_init1.创建了一块共享内存2.在共享内存空间创建一个信号量互斥锁ngx_event_module_init(ngx_cycle_t *cycle){ ... shm.size = size; ngx_str_set(&shm.name, "nginx_shared_zone"); shm.log = cycle->log; if (ngx_shm_alloc(&shm) != NGX_OK原创 2022-05-15 02:21:42 · 590 阅读 · 0 评论 -
Nginx源码阅读:避免惊群以及负载均衡的原理与具体实现
Nginx源码阅读:避免惊群以及负载均衡的原理与具体实现一、惊群效应1、发生惊群效应的原因1)使用accept2)使用epoll监听公共的端口2、Nginx中惊群惊群效应3、Nginx中惊群效应的解决方案4、Nginx中的源码1)简述避免惊群效应的源码2)`ngx_process_events_and_timers`3)`ngx_trylock_accept_mutex`5、补充二、负载均衡实现方式一、惊群效应1、发生惊群效应的原因1)使用accept主进程(master进程)fork出⼀批⼦进程(原创 2022-05-15 02:13:50 · 636 阅读 · 0 评论 -
Nginx反向代理与系统参数配置conf原理
要编译4个库nginx反向代理openssl进行通信连接的zlib用来压缩pcre用来正则表达式的对于linux下源码编译主要是2种nginx1.源码c写的,2.文档齐全,3.开源社区活跃4.性能高nignx安装安装pcre下载地址 http://www.pcre.org/安装zlib下载地址 http://www.zlib.net/安装nginx下载地址 http://www.nginx.net/分别进入目录,执行以下命令就行./configuremake..原创 2022-05-14 00:43:28 · 885 阅读 · 0 评论 -
nginx中的定时器源码分析与测试
nginx中的定时器源码分析与测试一、nignx中的定时器二、nignx中定时器测试三、附件在nginx中,定时器是由红黑树来实现的。有以下几个定时器的接口init_timer 初始化定时器(初始化红黑树)add_timer 添加定时器(红黑树左侧时间小,右侧时间大。当时间出现重复的时候,插入右侧)del_timer 删除定时器find_nearest_expire_timer 查找时间最近的定时器(红黑树中最左侧的节点)expire_timer 到期的定时器(执行定时事件,并删除红黑树中对原创 2022-04-08 21:29:39 · 2335 阅读 · 0 评论