天天看點

Nginx學習筆記(七) 建立子程序

ngx_start_worker_processes位于Nginx_process_cycle.c中,主要的工作是建立子程序。

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

Nginx學習筆記(七) 建立子程式
Nginx學習筆記(七) 建立子程式

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

Nginx學習筆記(七) 建立子程式
Nginx學習筆記(七) 建立子程式

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

Nginx學習筆記(七) 建立子程式
Nginx學習筆記(七) 建立子程式

   ngx_write_channel原型:

Nginx學習筆記(七) 建立子程式
Nginx學習筆記(七) 建立子程式

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

繼續閱讀