ngx_start_worker_processes位于Nginx_process_cycle.c中,主要的工作是建立子程序。
在Nginx中,master程序和worker程序是通過socketpair函數建立一對socket來實作,父程序與子程序之間的通信的。而這對socket被儲存在程序結構體ngx_process中的channel[2]數組中,其中channel[0]為父程序的socket,channel[1]為子程序的socket。


具體分析一下建立子程序的函數,也就是分析ngs_spawn_process:


接下來,看看Nginx是如何在程序間進行通信的,ngx_pass_open_channel函數:


ngx_write_channel原型:


本文轉自cococo點點部落格園部落格,原文連結:http://www.cnblogs.com/coder2012/p/3188355.html,如需轉載請自行聯系原作者