- 博客(6)
- 收藏
- 关注
原创 location的配置过程以及http流程中的使用情况
先看看ngx_http_init_listening,在系列文章中已经提到过这个函数,他的第三个参数port是一个结构体,定义如下 typedef struct { ngx_int_t family; in_port_t port; ngx_array_t addrs;
2016-09-22 16:54:00 1168
原创 Nginx源代码分析之HTTP2.0(二十)
http/2在谷歌的推动下几乎就是spdy的升级,nginx目前已经加入了http2的代码,结构跟spdy有一定相似度。 其入口函数是ngx_http_v2_init
2016-09-13 17:53:02 1826
原创 Nginx源代码分析之accept细节(十九)
现在单独说说accept中与一些具体I/O模型相关的细节。 其实前面已经提过这个问题,这一系列I/O模型中最大差别是iocp,我们前面也说了,linux的几个模型,不管是select,epoll,kqueue,其实都是基于异步通知的,也就是说系统只关心哪个socket有接受和发送完成的消息,然后设置一定的标志,当某个work线程调用select,epoll_wait,kevent
2016-09-09 17:37:52 1834
转载 Nginx源代码分析之锁的实现(十八)
转载一篇nginx锁的细节的文章 http://wang.peng.1123.blog.163.com/blog/static/129821112201381311441180/ Nginx中的锁是自己实现的,分为两种,一种是支持原子实现的原子锁,另外一种是文件锁。本文我们重点介绍原子锁的实现。 我们可以看到在线程中实现锁就是通过一个共享的堆上的内存(通过mal
2016-09-06 09:43:05 1181
原创 Nginx源代码分析之群惊问题(十七)
接上一节,在accept初始化的时候有一个ngx_use_accept_mutex变量,这是用来解决当多个进程在一个套接口上同时调用accept引起的群惊问题的。
2016-09-01 17:26:53 984
原创 Nginx源代码分析之accept(十六)
accpet 的初始化和调用可以从work进程的启动开始讲起 在unix系平台上,work进程的主函数是ngx_worker_process_cycle ngx_worker_process_cycle首先会执行进程初始化动作,调用的是ngx_worker_process_init,这个函数会执行一些初始化进程环境变量,信号的任务 在前面章节已经介绍过,到某一步会调用ngx_ev
2016-09-01 15:05:29 864
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人