nginxとワーカーとLinux TCPソケット/lsof

nginxとワーカーとLinux TCPソケット/lsof

私は1人のワーカーでnginxを起動しました。

ps --forest -fC nginx          
UID          PID    PPID  C STIME TTY          TIME CMD
root     3615889   10118  0 14:18 ?        00:00:00 nginx: master process nginx
nginx    3615890 3615889  0 14:18 ?        00:00:00  \_ nginx: worker process

どちらのプロセスもポート 80 でリッスンします。

  • pid=3615889 が主な項目です。
  • pid=3615890 はワーカーです。

もしそうなら、インターネットから要求が来たら誰が処理しますか?

OSI層の観点から、プロセスはどのように機能しますか?すべてのリクエストがプライマリサーバーに送信され、ワー​​カーにルーティングされるか、ワーカーがリクエストを独立して処理できると仮定するのは間違っていますか?

同じソケット(デバイス#2151156)を受け取る2つのプロセスについて混乱しています。

sudo ss -ltnp | grep nginx
LISTEN 0      511          0.0.0.0:80         0.0.0.0:*    users:(("nginx",pid=3615890,fd=8),("nginx",pid=3615889,fd=8))
LISTEN 0      511             [::]:80            [::]:*    users:(("nginx",pid=3615890,fd=9),("nginx",pid=3615889,fd=9))

sudo lsof -i TCP:80
COMMAND     PID  USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME
nginx   3615889  root    8u  IPv4 2151156      0t0  TCP *:http (LISTEN)
nginx   3615889  root    9u  IPv6 2151157      0t0  TCP *:http (LISTEN)
nginx   3615890 nginx    8u  IPv4 2151156      0t0  TCP *:http (LISTEN)
nginx   3615890 nginx    9u  IPv6 2151157      0t0  TCP *:http (LISTEN)

ベストアンサー1

おすすめ記事