Nginx的高性能的是用很多细节来保证,epoll下的多路io异步通知,阶段细分化的异步事件驱动,那么在内存管理这一块也是用了很大心血,上一篇我们讲到了slab分配器,我们可以可以看到那是对共享内存的管理的优化。Nginx在进程内也实现了自己的内存池,目的在于减少内存碎片,减少向操作系统的申请次数,减低模块开发难度。Nginx实现的内存池实际上非常简单。...
分类:
其他好文 时间:
2014-05-08 00:37:29
阅读次数:
403
nginx的slab分配器主要和共享内存(nginx自己实现的共享内存 采用mmap或者shm实现)一起使用,Nginx在解析完配置文件,把即将使用的共享内存全部以list链表的形式,对共享内存进行管理和划分。在nginx_cycle.c中
static ngx_int_t
ngx_init_zone_pool(ngx_cycle_t *cycle, ngx_shm_zone_t *zn)
{
...
分类:
其他好文 时间:
2014-05-07 08:18:53
阅读次数:
361