目前使用Nginx搭配PHP-FPM架設網站,
遇到當瞬間流量飆高的時候,
很容易發生502 Bad Gateway的狀況,
目前Server已經針對kernel的相關參數做過調整,
也參考過很多網路文章做系統優化,
仍然還是持續發生502 Bad Gateway的狀況,
但就在今天意外調整了Nginx的listen.backlog參數後,
502 Bad Gateway的狀況就消失不見了,
想請問listen.backlog的設定,
應該要怎樣才是最佳設定?
附註:
原本listen.backlog設定為-1(不限制), 但目前已經改成4096, 不再有502回應.
當中也有調整過相關kernel參數如下,
sysctl -w fs.file-max=209708
sysctl -w net.core.netdev_max_backlog=4096
sysctl -w net.core.somaxconn=4096
sysctl -w net.ipv4.tcp_max_syn_backlog=4096
但後續有把上述參數調回原先設定, 仍然沒有502回應.
最後把listen.backlog調回-1, 開始出現502回應.